ieee802-types

This module contains a collection of generally useful derived data types for IEEE YANG models.

  • Version: 2020-10-23

    ieee802-types@2020-10-23


    
      module ieee802-types {
    
        yang-version 1;
    
        namespace
          'urn:ieee:std:802.1Q:yang:ieee802-types';
    
        prefix ieee;
    
        organization "IEEE 802.1 Working Group";
    
        contact
          "WG-URL: http://www.ieee802.org/1/
        WG-EMail: stds-802-1-L@ieee.org
        
        Contact: IEEE 802.1 Working Group Chair
        Postal: C/O IEEE 802.1 Working Group
                IEEE Standards Association
                445 Hoes Lane
                P.O. Box 1331
                Piscataway
                NJ 08854
                USA
        
        E-mail: STDS-802-1-L@IEEE.ORG";
    
        description
          "This module contains a collection of generally useful derived
        data types for IEEE YANG models.";
    
        revision "2020-10-23" {
          description
            "New revision date because Qcx project finished.";
          reference
            "6.3.3.4 of IEEE Std 802.1AS-2020";
    
        }
    
        revision "2019-03-07" {
          description
            "Adding types to define rational numbers and PTP time.";
          reference
            "6.3.3.4 of IEEE Std 802.1AS-2020";
    
        }
    
        revision "2018-03-07" {
          description
            "Published as part of IEEE Std 802.1Q-2018. Initial version.";
          reference
            "IEEE Std 802.1Q-2018, Bridges and Bridged Networks.";
    
        }
    
    
        typedef mac-address {
          type string {
            pattern
              "[0-9a-fA-F]{2}(-[0-9a-fA-F]{2}){5}";
          }
          description
            "The mac-address type represents a MAC address in the canonical
          format and hexadecimal format specified by IEEE Std 802. The
          hexidecimal representation uses uppercase characters.";
          reference
            "3.1 of IEEE Std 802-2014
            8.1 of IEEE Std 802-2014";
    
        }
    
        grouping rational-grouping {
          description
            "Definition of a non-negative rational number.";
          leaf numerator {
            type uint32;
            description
              "Numerator of the rational number.";
          }
    
          leaf denominator {
            type uint32 {
              range "1..4294967295";
            }
            description
              "Denominator of the rational number.";
          }
        }  // grouping rational-grouping
    
        grouping ptp-time-grouping {
          description
            "This grouping specifies a PTP timestamp, represented as a
          48-bit unsigned integer number of seconds and a 32-bit unsigned
          integer number of nanoseconds.";
          reference
            "6.3.3.4 of IEEE Std 802.1AS";
    
          leaf seconds {
            type uint64;
            description
              "This is the integer portion of the timestamp in units of
            seconds. The upper 16 bits are always zero.";
          }
    
          leaf nanoseconds {
            type uint32;
            description
              "This is the fractional portion of the timestamp in units of
            nanoseconds. This value is always less than 10^9.";
          }
        }  // grouping ptp-time-grouping
      }  // module ieee802-types
    

© 2023 YumaWorks, Inc. All rights reserved.