YANG SID Management
YANG SID Files
The yangdump-pro program can be used to generate YANG SID Files defined in RFC 9595. These JSON files are used to support the YANG to CBOR encoding defined in RFC 9254. These RFCs are needed for the Binary Push feature supported in the client and the server. There should be a corresponding YANG SID file for each YANG module.
A YANG SID file is a JSON file derived from a YANG module. It contains mappings between YANG schema nodes and numbers. The numbers are used in the CBOR encoding instead of the long path strings.
The 'netconfd-pro' server will look for YANG SID files in the module path, as specified by the $YUMAPRO_MODPATH environment variable or the --modpath CLI parameter.
Example: 'in-unknown-protos' leaf from ietf-interfaces.yang
{
"namespace":"data",
"identifier":"/ietf-interfaces:interfaces-state/interface/statistics/in-unknown-protos",
"sid":"1525"
}
The 'official' YANG SID assignments are maintained by IANA in the YANG SIDs Registry
YANG Megarange Files are used to manage an entire set of YANG SID files.
Generating a YANG SID File
There is some support for automatically generating initial YANG SID files. Support for updating YANG SID files is planned for a future release.
There are several CLI parameters used for YANG SID file generation:
--sid-generate-file: required to specify the assignment range for the YANG SID file
This parameter format is a string:
range-start
:
range-sizeExample: range starts at 1200 and size is 50:
1200:50
--sid-finalize: specified is the YANG SID file is for a 'published' (stable) YANG module, or an 'unpublished' (unstable) YANG module.
Default is not preset (unpublished)
--module: Specifies the YANG module that will be used for YANG SID file generation.
--output: Specifies to output directory and/or the output file name.
By default, the YANG SID file name will have the module name and revision date in it, and be created in the current directory.
--indent: Specifies the indent amount for the output file.
Default is
2
--modpath: Specifies where yangdump-pro should look for modules
This is in addition to the defaults for the yangdump-pro search path
Example: Generate the YANG SID file for ietf-interfaces.yang
The real assignment from IANA is used
> yangdump-pro sid-generate-file=1500:100 sid-finalize module=ietf-interfaces
Example: Generate the YANG SID file for toaster.yang
The Experimental range
60000:40000
is used for a fake assignment
> yangdump-pro sid-generate-file=60000:100 sid-finalize module=toaster
The resulting file is shown below:
{
"ietf-sid-file:sid-file": {
"module-name":"toaster",
"module-revision":"2009-11-20",
"description":"Generated by yangdump-pro 24.10T-7 at 2025-04-02T17:52:31Z",
"assignment-range": [
{
"entry-point":"60000",
"size":"100"
}
],
"item": [
{
"namespace":"module",
"identifier":"toaster",
"sid":"60000"
},
{
"namespace":"identity",
"identifier":"frozen-bagel",
"sid":"60001"
},
{
"namespace":"identity",
"identifier":"frozen-waffle",
"sid":"60002"
},
{
"namespace":"identity",
"identifier":"hash-brown",
"sid":"60003"
},
{
"namespace":"identity",
"identifier":"toast-type",
"sid":"60004"
},
{
"namespace":"identity",
"identifier":"wheat-bread",
"sid":"60005"
},
{
"namespace":"identity",
"identifier":"white-bread",
"sid":"60006"
},
{
"namespace":"identity",
"identifier":"wonder-bread",
"sid":"60007"
},
{
"namespace":"data",
"identifier":"/toaster:cancel-toast",
"sid":"60008"
},
{
"namespace":"data",
"identifier":"/toaster:cancel-toast/input",
"sid":"60009"
},
{
"namespace":"data",
"identifier":"/toaster:cancel-toast/output",
"sid":"60010"
},
{
"namespace":"data",
"identifier":"/toaster:make-toast",
"sid":"60011"
},
{
"namespace":"data",
"identifier":"/toaster:make-toast/input",
"sid":"60012"
},
{
"namespace":"data",
"identifier":"/toaster:make-toast/input/toasterDoneness",
"sid":"60013"
},
{
"namespace":"data",
"identifier":"/toaster:make-toast/input/toasterToastType",
"sid":"60014"
},
{
"namespace":"data",
"identifier":"/toaster:make-toast/output",
"sid":"60015"
},
{
"namespace":"data",
"identifier":"/toaster:toastDone",
"sid":"60016"
},
{
"namespace":"data",
"identifier":"/toaster:toastDone/toastStatus",
"sid":"60017"
},
{
"namespace":"data",
"identifier":"/toaster:toaster",
"sid":"60018"
},
{
"namespace":"data",
"identifier":"/toaster:toaster/toasterManufacturer",
"sid":"60019"
},
{
"namespace":"data",
"identifier":"/toaster:toaster/toasterModelNumber",
"sid":"60020"
},
{
"namespace":"data",
"identifier":"/toaster:toaster/toasterStatus",
"sid":"60021"
}
]
}
}
Updating a YANG SID File
Support for updating YANG SID files is planned for a future release.
YANG Megarange Files
yangdump-pro can be used to automatically generate an entire set of YANG modules.
A YANG Megarange can be allocated by IANA for YANG modules published outside the IETF.
The Experimental Range SHOULD NOT be used for real YANG SID files!
The YANG Megarange file is a data structure for managing the set of YANG modules that comprise a megarange.
YANG Module: yumaworks-sid-megarange.yang
The user is expected to fill in at least the header portion so yangdump-pro knows where to look for modules and other details.
A megarange has 3 parts:
header: control information including relative location of the files used.
assignments: The assignment list is an ordered list of assignment blocks to manage allocation of the megarange blocks to modules.
modules: The module list is an unordered list of entries representing the YANG modules in the megarange. Each module uses one or more assignments.
A megarange has some restrictions:
Maximum megarange size is 4G -1 SIDs
Maximum megarange allocation block size is 4G -1 SIDs
The following CLI parameters are available for YANG Megaranges:
--megarange-action: Specifies the YANG megarange action to perform
--megarange-file: Specifies the YANG megarange file to use for the action. Required for all actions except 'template'.
--output: Specifies to output directory and/or the output file name.
By default, the YANG SID file name will have the module name and revision date in it, and be created in the current directory.
It is recommended to use this parameter for generating SID files
--indent: Specifies the indent amount for the output file.
Default is
2
--modpath: Specifies where yangdump-pro should look for modules
This is in addition to the defaults for the yangdump-pro search path
Megarange Allocation By PEN
A Private Enterprise Number is a numeric identifier representing an organization. IANA maintains this registry, originally intended for SNMP. There is an online form to apply for a new PEN number.
There is a new Internet Draft that allows a Private Enterprise Number to be used to assign real YANG SID values:
The yangdump-pro program supports this draft with automatic assignment types:
ietf: Use the IETF assignment range
The IETF range is
0:1000000
SID value
0
is reserved to indicate 'not set'SID values
1
to999
are reserved for IANA useSID values for IETF YANG modules start at
1000
pen-low: Use the 32-bit PEN range that has 10000 available YANG SID assignments
Assignment derived from PEN draft and 'owner-pen' field
pen-high: Use the 64-bit PEN range that has 100000 available YANG SID assignments
Assignment derived from PEN draft and 'owner-pen' field
custom: Use the specified assignment range.
Assignment from IANA, This process is described in RFC 9595 section 6.3.2.
The 'entry-point' and 'size' fields must be provided
For example, YumaWorks has been assigned PEN number 49564
.
The 'pen-low' range for YumaWorks is
3495640000:10000
The 'pen-high' range for YumaWorks is
304956400000:100000
Generating a Megarange Template
A YANG megarange file can be generated using the following command:
The file
sid-megarange.json
will be created in the current directory
yangdump-pro megarange-action=template
Generated megarange template file: sid-megarange.json
Source template file: none
Example template:
{
"yumaworks-sid-megarange:sid-megarange": {
"name":"name",
"policy":"public",
"entry-point":"1200000",
"size":100000,
"contact":"mycontact",
"owner-pen":12345,
"assign-type":"pen-low",
"repo-root":"myroot",
"repo-folder": [
"myfolder"
],
"modpath":"mymodpath",
"prefix": [
"myprefix-"
]
}
}
Filling In a Megarange Template
The fields in the template must be set to real values before it can be used. It is suggested that the file also be renamed.
Example: Megarange YumaWorks YANG Modules
{
"yumaworks-sid-megarange:sid-megarange": {
"name":"yumapro",
"policy":"public",
"contact":"[email protected]",
"owner-pen":49564,
"assign-type":"pen-low",
"repo-root":"$HOME/repos/yumapro-yang",
"repo-folder": [
"netconfcentral",
"yumaworks"
]
}
}
The following fields must be set:
assign-type: The type of assignment
'ietf', 'pen-low', 'pen-high' or 'custom'
repo-root: The file folder location for the root the the YANG module to scan for inclusion in the megarange.
All subdirs are scanned unless the 'repo-folder' parameter is provided. Then only those folders are scanned.
The first term in the file path can be an environment variable or the tilde '~' character to indicate the $HOME location.
The following optional fields should be set:
name: The name of the megarange
policy: The usage policy according to RFC 9595
entry-point: The start of the megarange. Required if the 'assign-type' is 'custom'.
size: The size of the megarange. Required if the 'assign-type' is 'custom'.
contact: The megarange contact information.
owner-pen: The PEN number must be provided if the assign-type is 'pen-low' or 'pen-high'
repo-folder: List of folder paths within the 'repo-root'. Needed if not all folders within the 'repo-root' are part of the megarange.
modpath: The file folder path(s) for modules needed outside of the 'repo-root'. This can be omitted for yangdump-pro if the modules can be found in the normal search path.
prefix: List of YANG module name prefixes to include in the megarange. If missing then no files will be excluded. If present, then a YANG module name must match one of the prefix entries to be included in the megarange.
After the megarange action is performed, there may be an updated megarange file, e.g. 'foo.json.new'.
If the --megarange-action parameter is set to 'new' or 'autonew', then the new megarange file will have the 'entry-point' and 'size' fields in the header set to the values used. For 'autonew', the 'size' field in each 'allocation' and 'module' entry is filled in.
Generating the Megarange File Contents
There are two modes supported for generating the megarange file data.
action=new: The --megarange-action is set to 'new'
A static allocation size of '350' is used
No YANG SID files are generated
A new megarange file is generated with the same name as the --megarange-file except the suffix
.new
is added.Not recommended in most cases, since it is possible to exceed '350' SIDs used in a module.
Allows 'advanced template' to be generated which can be modified as needed.
action=autonew: The --megarange-action is set to 'autonew'
A dynamic allocation size is used based on the actual SIDs needed
The minimum allocation size is 1 block (50 SIDs)
The actual allocation is 25% more than the needed SIDs, rounded up to the next block
All YANG SID files are generated.
A new megarange file is generated with the same name as the --megarange-file except the suffix
.new
is added.
Example: Create the YANG SID files and updated megarange file for the YumaPro YANG modules.
> mkdir sidfiles
> yangdump-pro --megarange-file=yumapro.json --megarange-action=autonew --output=sidfiles
The updated megarange file will be written to 'yumapro.json.new' :
{
"yumaworks-sid-megarange:sid-megarange": {
"name":"yumapro",
"policy":"public",
"entry-point":"3495640000",
"size":10000,
"contact":"[email protected]",
"owner-pen":49564,
"assign-type":"pen-low",
"repo-root":"$HOME/repos/yumapro-yang",
"repo-folder": [
"netconfcentral",
"yumaworks"
],
"assignment": [
{
"entry-point":0,
"size":50,
"used":11,
"module-name":"example-fan"
},
{
"entry-point":50,
"size":350,
"used":262,
"module-name":"netconfd-pro"
},
{
"entry-point":400,
"size":50,
"used":22,
"module-name":"toaster"
},
{
"entry-point":450,
"size":50,
"used":3,
"module-name":"xrd"
},
{
"entry-point":500,
"size":50,
"used":7,
"module-name":"yang-attributes"
},
{
"entry-point":550,
"size":50,
"used":1,
"module-name":"yang-data-ext"
},
{
"entry-point":600,
"size":1650,
"used":1286,
"module-name":"yangcli-pro"
},
{
"entry-point":2250,
"size":50,
"used":35,
"module-name":"yangdiff-pro"
},
{
"entry-point":2300,
"size":150,
"used":82,
"module-name":"yangdump-pro"
},
{
"entry-point":2450,
"size":50,
"used":1,
"module-name":"yuma-app-common"
},
{
"entry-point":2500,
"size":50,
"used":13,
"module-name":"yuma-arp"
},
{
"entry-point":2550,
"size":50,
"used":21,
"module-name":"yuma-interfaces"
},
{
"entry-point":2600,
"size":50,
"used":15,
"module-name":"yuma-mysession"
},
{
"entry-point":2650,
"size":100,
"used":43,
"module-name":"yuma-nacm"
},
{
"entry-point":2750,
"size":100,
"used":42,
"module-name":"yuma-ncx"
},
{
"entry-point":2850,
"size":100,
"used":43,
"module-name":"yuma-netconf"
},
{
"entry-point":2950,
"size":150,
"used":82,
"module-name":"yuma-proc"
},
{
"entry-point":3100,
"size":150,
"used":80,
"module-name":"yuma-system"
},
{
"entry-point":3250,
"size":50,
"used":4,
"module-name":"yuma-time-filter"
},
{
"entry-point":3300,
"size":50,
"used":1,
"module-name":"yuma-types"
},
{
"entry-point":3350,
"size":50,
"used":1,
"module-name":"yuma-xsd"
},
{
"entry-point":3400,
"size":50,
"used":1,
"module-name":"yumaworks-agt-profile"
},
{
"entry-point":3450,
"size":50,
"used":1,
"module-name":"yumaworks-app-common"
},
{
"entry-point":3500,
"size":50,
"used":7,
"module-name":"yumaworks-attrs"
},
{
"entry-point":3550,
"size":50,
"used":7,
"module-name":"yumaworks-callhome"
},
{
"entry-point":3600,
"size":50,
"used":7,
"module-name":"yumaworks-cert-usermap"
},
{
"entry-point":3650,
"size":50,
"used":3,
"module-name":"yumaworks-config-change"
},
{
"entry-point":3700,
"size":50,
"used":36,
"module-name":"yumaworks-db-api"
},
{
"entry-point":3750,
"size":50,
"used":7,
"module-name":"yumaworks-event-filter"
},
{
"entry-point":3800,
"size":50,
"used":13,
"module-name":"yumaworks-event-stream"
},
{
"entry-point":3850,
"size":50,
"used":1,
"module-name":"yumaworks-extensions"
},
{
"entry-point":3900,
"size":50,
"used":16,
"module-name":"yumaworks-getbulk"
},
{
"entry-point":3950,
"size":50,
"used":36,
"module-name":"yumaworks-grpc-mon"
},
{
"entry-point":4000,
"size":50,
"used":6,
"module-name":"yumaworks-ids"
},
{
"entry-point":4050,
"size":50,
"used":4,
"module-name":"yumaworks-internal"
},
{
"entry-point":4100,
"size":50,
"used":7,
"module-name":"yumaworks-lock"
},
{
"entry-point":4150,
"size":50,
"used":1,
"module-name":"yumaworks-mgr-common"
},
{
"entry-point":4200,
"size":150,
"used":105,
"module-name":"yumaworks-opsmgr"
},
{
"entry-point":4350,
"size":50,
"used":5,
"module-name":"yumaworks-restconf"
},
{
"entry-point":4400,
"size":50,
"used":1,
"module-name":"yumaworks-restconf-commit"
},
{
"entry-point":4450,
"size":50,
"used":15,
"module-name":"yumaworks-schema-mount"
},
{
"entry-point":4500,
"size":50,
"used":1,
"module-name":"yumaworks-schema-mount-annot"
},
{
"entry-point":4550,
"size":350,
"used":264,
"module-name":"yumaworks-server"
},
{
"entry-point":4900,
"size":100,
"used":58,
"module-name":"yumaworks-sesmgr"
},
{
"entry-point":5000,
"size":450,
"used":357,
"module-name":"yumaworks-sil-sa"
},
{
"entry-point":5450,
"size":50,
"used":22,
"module-name":"yumaworks-sm-yanglib"
},
{
"entry-point":5500,
"size":50,
"used":5,
"module-name":"yumaworks-support-save"
},
{
"entry-point":5550,
"size":150,
"used":105,
"module-name":"yumaworks-system"
},
{
"entry-point":5700,
"size":50,
"used":1,
"module-name":"yumaworks-system-dev"
},
{
"entry-point":5750,
"size":50,
"used":7,
"module-name":"yumaworks-templates"
},
{
"entry-point":5800,
"size":50,
"used":3,
"module-name":"yumaworks-term-msg"
},
{
"entry-point":5850,
"size":50,
"used":23,
"module-name":"yumaworks-test"
},
{
"entry-point":5900,
"size":50,
"used":1,
"module-name":"yumaworks-types"
},
{
"entry-point":5950,
"size":50,
"used":19,
"module-name":"yumaworks-virtual-server"
},
{
"entry-point":6000,
"size":50,
"used":2,
"module-name":"yumaworks-yang-api"
},
{
"entry-point":6050,
"size":50,
"used":20,
"module-name":"yumaworks-yang-cbor"
},
{
"entry-point":6100,
"size":50,
"used":19,
"module-name":"yumaworks-yangmap"
},
{
"entry-point":6150,
"size":50,
"used":1,
"module-name":"yumaworks-yangpush-dev"
},
{
"entry-point":6200,
"size":50,
"used":19,
"module-name":"yumaworks-ycontrol"
},
{
"entry-point":6250,
"size":100,
"used":75,
"module-name":"yumaworks-yp-gnmi"
},
{
"entry-point":6350,
"size":50,
"used":29,
"module-name":"yumaworks-yp-grpc"
},
{
"entry-point":6400,
"size":50,
"used":16,
"module-name":"yumaworks-yp-ha"
},
{
"entry-point":6450,
"size":50,
"used":16,
"module-name":"yumaworks-zmqapi"
}
],
"module": [
{
"name":"example-fan",
"revision":"2018-03-17",
"source":"/yumaworks/example-fan.yang",
"used":11
},
{
"name":"netconfd-pro",
"revision":"2024-12-21",
"source":"/yumaworks/netconfd-pro.yang",
"used":262
},
{
"name":"toaster",
"revision":"2009-11-20",
"source":"/netconfcentral/toaster.yang",
"used":22
},
{
"name":"xrd",
"revision":"2016-12-15",
"source":"/yumaworks/xrd.yang",
"used":3
},
{
"name":"yang-attributes",
"revision":"2016-01-06",
"source":"/yumaworks/yang-attributes.yang",
"used":7
},
{
"name":"yang-data-ext",
"revision":"2017-07-03",
"source":"/yumaworks/yang-data-ext.yang",
"used":1
},
{
"name":"yangcli-pro",
"revision":"2025-03-07",
"source":"/yumaworks/yangcli-pro.yang",
"used":1286
},
{
"name":"yangdiff-pro",
"revision":"2024-11-09",
"source":"/yumaworks/yangdiff-pro.yang",
"used":35
},
{
"name":"yangdump-pro",
"revision":"2024-11-09",
"source":"/yumaworks/yangdump-pro.yang",
"used":82
},
{
"name":"yuma-app-common",
"revision":"2017-07-25",
"source":"/netconfcentral/yuma-app-common.yang",
"used":1
},
{
"name":"yuma-arp",
"revision":"2012-01-13",
"source":"/netconfcentral/yuma-arp.yang",
"used":13
},
{
"name":"yuma-interfaces",
"revision":"2012-01-13",
"source":"/netconfcentral/yuma-interfaces.yang",
"used":21
},
{
"name":"yuma-mysession",
"revision":"2013-10-05",
"source":"/netconfcentral/yuma-mysession.yang",
"used":15
},
{
"name":"yuma-nacm",
"revision":"2012-10-05",
"source":"/netconfcentral/yuma-nacm.yang",
"used":43
},
{
"name":"yuma-ncx",
"revision":"2015-10-16",
"source":"/netconfcentral/yuma-ncx.yang",
"used":42
},
{
"name":"yuma-netconf",
"revision":"2015-04-30",
"source":"/netconfcentral/yuma-netconf.yang",
"used":43
},
{
"name":"yuma-proc",
"revision":"2013-07-16",
"source":"/netconfcentral/yuma-proc.yang",
"used":82
},
{
"name":"yuma-system",
"revision":"2013-07-15",
"source":"/netconfcentral/yuma-system.yang",
"used":80
},
{
"name":"yuma-time-filter",
"revision":"2012-11-15",
"source":"/netconfcentral/yuma-time-filter.yang",
"used":4
},
{
"name":"yuma-types",
"revision":"2019-11-29",
"source":"/netconfcentral/yuma-types.yang",
"used":1
},
{
"name":"yuma-xsd",
"revision":"2009-11-21",
"source":"/netconfcentral/yuma-xsd.yang",
"used":1
},
{
"name":"yumaworks-agt-profile",
"revision":"2024-10-03",
"source":"/yumaworks/yumaworks-agt-profile.yang",
"used":1
},
{
"name":"yumaworks-app-common",
"revision":"2024-11-09",
"source":"/yumaworks/yumaworks-app-common.yang",
"used":1
},
{
"name":"yumaworks-attrs",
"revision":"2024-07-29",
"source":"/yumaworks/yumaworks-attrs.yang",
"used":7
},
{
"name":"yumaworks-callhome",
"revision":"2020-10-17",
"source":"/yumaworks/yumaworks-callhome.yang",
"used":7
},
{
"name":"yumaworks-cert-usermap",
"revision":"2022-02-06",
"source":"/yumaworks/yumaworks-cert-usermap.yang",
"used":7
},
{
"name":"yumaworks-config-change",
"revision":"2019-06-09",
"source":"/yumaworks/yumaworks-config-change.yang",
"used":3
},
{
"name":"yumaworks-db-api",
"revision":"2024-05-26",
"source":"/yumaworks/yumaworks-db-api.yang",
"used":36
},
{
"name":"yumaworks-event-filter",
"revision":"2014-02-09",
"source":"/yumaworks/yumaworks-event-filter.yang",
"used":7
},
{
"name":"yumaworks-event-stream",
"revision":"2024-02-16",
"source":"/yumaworks/yumaworks-event-stream.yang",
"used":13
},
{
"name":"yumaworks-extensions",
"revision":"2024-04-04",
"source":"/yumaworks/yumaworks-extensions.yang",
"used":1
},
{
"name":"yumaworks-getbulk",
"revision":"2021-08-07",
"source":"/yumaworks/yumaworks-getbulk.yang",
"used":16
},
{
"name":"yumaworks-grpc-mon",
"revision":"2022-01-10",
"source":"/yumaworks/yumaworks-grpc-mon.yang",
"used":36
},
{
"name":"yumaworks-ids",
"revision":"2014-07-12",
"source":"/yumaworks/yumaworks-ids.yang",
"used":6
},
{
"name":"yumaworks-internal",
"revision":"2019-01-22",
"source":"/yumaworks/yumaworks-internal.yang",
"used":4
},
{
"name":"yumaworks-lock",
"revision":"2023-04-29",
"source":"/yumaworks/yumaworks-lock.yang",
"used":7
},
{
"name":"yumaworks-mgr-common",
"revision":"2018-07-11",
"source":"/yumaworks/yumaworks-mgr-common.yang",
"used":1
},
{
"name":"yumaworks-opsmgr",
"revision":"2018-07-10",
"source":"/yumaworks/yumaworks-opsmgr.yang",
"used":105
},
{
"name":"yumaworks-restconf",
"revision":"2024-06-18",
"source":"/yumaworks/yumaworks-restconf.yang",
"used":5
},
{
"name":"yumaworks-restconf-commit",
"revision":"2017-03-29",
"source":"/yumaworks/yumaworks-restconf-commit.yang",
"used":1
},
{
"name":"yumaworks-schema-mount",
"revision":"2022-01-19",
"source":"/yumaworks/yumaworks-schema-mount.yang",
"used":15
},
{
"name":"yumaworks-schema-mount-annot",
"revision":"2021-12-08",
"source":"/yumaworks/yumaworks-schema-mount-annot.yang",
"used":1
},
{
"name":"yumaworks-server",
"revision":"2018-04-21",
"source":"/yumaworks/yumaworks-server.yang",
"used":264
},
{
"name":"yumaworks-sesmgr",
"revision":"2018-04-28",
"source":"/yumaworks/yumaworks-sesmgr.yang",
"used":58
},
{
"name":"yumaworks-sil-sa",
"revision":"2024-09-13",
"source":"/yumaworks/yumaworks-sil-sa.yang",
"used":357
},
{
"name":"yumaworks-sm-yanglib",
"revision":"2022-09-24",
"source":"/yumaworks/yumaworks-sm-yanglib.yang",
"used":22
},
{
"name":"yumaworks-support-save",
"revision":"2022-05-19",
"source":"/yumaworks/yumaworks-support-save.yang",
"used":5
},
{
"name":"yumaworks-system",
"revision":"2024-05-25",
"source":"/yumaworks/yumaworks-system.yang",
"used":105
},
{
"name":"yumaworks-system-dev",
"revision":"2024-04-09",
"source":"/yumaworks/yumaworks-system-dev.yang",
"used":1
},
{
"name":"yumaworks-templates",
"revision":"2017-02-20",
"source":"/yumaworks/yumaworks-templates.yang",
"used":7
},
{
"name":"yumaworks-term-msg",
"revision":"2019-05-05",
"source":"/yumaworks/yumaworks-term-msg.yang",
"used":3
},
{
"name":"yumaworks-test",
"revision":"2023-03-16",
"source":"/yumaworks/yumaworks-test.yang",
"used":23
},
{
"name":"yumaworks-types",
"revision":"2024-04-14",
"source":"/yumaworks/yumaworks-types.yang",
"used":1
},
{
"name":"yumaworks-virtual-server",
"revision":"2022-01-19",
"source":"/yumaworks/yumaworks-virtual-server.yang",
"used":19
},
{
"name":"yumaworks-yang-api",
"revision":"2024-06-18",
"source":"/yumaworks/yumaworks-yang-api.yang",
"used":2
},
{
"name":"yumaworks-yang-cbor",
"revision":"2022-05-21",
"source":"/yumaworks/yumaworks-yang-cbor.yang",
"used":20
},
{
"name":"yumaworks-yangmap",
"revision":"2018-01-04",
"source":"/yumaworks/yumaworks-yangmap.yang",
"used":19
},
{
"name":"yumaworks-yangpush-dev",
"revision":"2019-11-22",
"source":"/yumaworks/yumaworks-yangpush-dev.yang",
"used":1
},
{
"name":"yumaworks-ycontrol",
"revision":"2023-08-04",
"source":"/yumaworks/yumaworks-ycontrol.yang",
"used":19
},
{
"name":"yumaworks-yp-gnmi",
"revision":"2023-08-04",
"source":"/yumaworks/yumaworks-yp-gnmi.yang",
"used":75
},
{
"name":"yumaworks-yp-grpc",
"revision":"2023-08-04",
"source":"/yumaworks/yumaworks-yp-grpc.yang",
"used":29
},
{
"name":"yumaworks-yp-ha",
"revision":"2023-08-04",
"source":"/yumaworks/yumaworks-yp-ha.yang",
"used":16
},
{
"name":"yumaworks-zmqapi",
"revision":"2023-06-24",
"source":"/yumaworks/yumaworks-zmqapi.yang",
"used":16
}
]
}
}
The YANG SID files are located in the 'sidfiles' directory.
Generating the YANG SID Files
There are two modes supported for generating the YANG SID files:
action=new-sid: The --megarange-action is set to 'new-sid'
The specified megarange-file is expected to be complete
YANG SID files are generated for the modules specified in the megarange file.
A new megarange file is generated with the same name as the --megarange-file except the suffix
.new
is added.Allows manually maintained megarange files to be used to generate YANG SID files.
action=autonew: The --megarange-action is set to 'autonew'
Described in previous section