tosca_definitions_version: tosca_simple_yaml_1_3 description: ETSI NFV SOL 001 pnfd types definitions version 4.3.1 metadata: template_name: etsi_nfv_sol001_pnfd_types template_author: ETSI_NFV template_version: 4.3.1 imports: - https://forge.etsi.org/rep/nfv/SOL001/raw/v4.3.1/etsi_nfv_sol001_common_types.yaml data_types: tosca.datatypes.nfv.LocationInfo: derived_from: tosca.datatypes.Root description: Represents geographical information on the location where a PNF is deployed. properties: country_code: type: string # two-letter ISO 3166 country code description: Country code required: true civic_address_element: type: list entry_schema: type: tosca.datatypes.nfv.CivicAddressElement description: Elements composing the civic address where the PNF is deployed. required: false geographic_coordinates: type: tosca.datatypes.nfv.GeographicCoordinates description: Geographic coordinates (e.g. Altitude, Longitude, Latitude) where the PNF is deployed. required: false tosca.datatypes.nfv.CivicAddressElement: derived_from: tosca.datatypes.Root description: Represents an element of a civic location as specified in IETF RFC 4776 [11]. properties: ca_type: type: string # RFC4776 description: caType as per RFC4776 required: true ca_value: type: string # RFC4776 description: caValue as per RFC4776. required: true tosca.datatypes.nfv.GeographicCoordinates: derived_from: tosca.datatypes.Root description: Represents an element of a geographic coordinate location as specified in IETF RFC?6225. properties: latitude_uncertainty: type: string # RFC 6225 description: LatUnc as per RFC 6225 required: false latitude: type: string # RFC 6225 description: Latitude value as per RFC 6225 required: true longitude_uncertainty: type: string # RFC 6225 description: LongUnc as per RFC 6225 required: false longitude: type: string # RFC 6225 description: Longitude value as per RFC 6225 required: true altitude_type: type: string # RFC 6225 description: AType value as per RFC 6225 required: true altitude_uncertainty: type: string # RFC 6225 description: AltUnc as per RFC 6225 required: false altitude: type: string # RFC 6225 description: Altitude value as per RFC 6225 required: true node_types: tosca.nodes.nfv.PNF: derived_from: tosca.nodes.Root properties: descriptor_id: # instead of pnfd_id type: string # UUID required: true description: Identifier of this PNFD information element. It uniquely identifies the PNFD. function_description: type: string required: true description: Describes the PNF function. provider: type: string required: true description: Identifies the provider of the PNFD. version: type: string required: true description: Identifies the version of the PNFD. descriptor_invariant_id: # instead of pnfd-invariant-id type: string # UUID required: true description: Identifier of this PNFD in a version independent manner. This attribute is invariant across versions of PNFD with no constraint on the changes across versions. ext_invariant_id: type: string # UUID required: false description: Identifies a PNFD in a version independent manner. This attribute is invariant across versions of the PNFD that expose the same external connectivity, i.e. same number and name of the requirements for VirtualLinkable capability that represent PnfExtCps. When used in a PNF node template in an NSD it allows for PNF instances during NS LCM the use of a PNFD different from the one referenced by the descriptor_id attribute, provided they have the same ext_invariant_id. name: type: string required: true description: Name to identify the PNFD. geographical_location_info: type: tosca.datatypes.nfv.LocationInfo required: false description: Provides information about the geographical location (e.g. geographic coordinates or address of the building, etc.) of the PNF version_dependency: type: list description: Identifies versions of descriptors of other constituents in the NSD upon which the PNF depends. The dependencies may be described for the PNFD referenced with descriptor_id and for PNFDs with the same ext_invariant_id. required: false entry_schema: type: tosca.datatypes.nfv.VersionDependency requirements: - virtual_link: capability: tosca.capabilities.nfv.VirtualLinkable relationship: tosca.relationships.nfv.VirtualLinksTo occurrences: [ 0, 1 ] # Additional requirements shall be defined in the PNF specific node type (deriving from tosca.nodes.nfv.PNF) corresponding to NS virtual links that need to connect to PnfExtCps tosca.nodes.nfv.PnfExtCp: derived_from: tosca.nodes.nfv.Cp description: node definition of PnfExtCp. requirements: - external_virtual_link: capability: tosca.capabilities.nfv.VirtualLinkable relationship: tosca.relationships.nfv.VirtualLinksTo occurrences: [0, 1] policy_types: tosca.policies.nfv.PnfSecurityGroupRule: derived_from: tosca.policies.nfv.Abstract.SecurityGroupRule description: The PnfSecurityGroupRule type is a policy type specified the matching criteria for the ingress and/or egress traffic to/from visited PNF external connection points. targets: [ tosca.nodes.nfv.PnfExtCp ]