4141from  .bom_ref  import  BomRef 
4242from  .component  import  Component 
4343from  .contact  import  OrganizationalContact , OrganizationalEntity 
44+ from  .definition  import  DefinitionRepository , _DefinitionRepositoryHelper 
4445from  .dependency  import  Dependable , Dependency 
4546from  .license  import  License , LicenseExpression , LicenseRepository 
4647from  .service  import  Service 
@@ -72,6 +73,7 @@ def __init__(
7273        manufacturer : Optional [OrganizationalEntity ] =  None ,
7374        # Deprecated as of v1.6 
7475        manufacture : Optional [OrganizationalEntity ] =  None ,
76+         definitions : Optional [DefinitionRepository ] =  None ,
7577    ) ->  None :
7678        self .timestamp  =  timestamp  or  _get_now_utc ()
7779        self .tools  =  tools  or  []  # type:ignore[assignment] 
@@ -88,6 +90,7 @@ def __init__(
8890                '`bom.metadata.manufacture` is deprecated from CycloneDX v1.6 onwards. ' 
8991                'Please use `bom.metadata.component.manufacturer` instead.' ,
9092                DeprecationWarning )
93+         self .definitions  =  definitions 
9194
9295    @property  
9396    @serializable .type_mapping (serializable .helpers .XsdDateTime ) 
@@ -282,6 +285,23 @@ def properties(self) -> 'SortedSet[Property]':
282285    def  properties (self , properties : Iterable [Property ]) ->  None :
283286        self ._properties  =  SortedSet (properties )
284287
288+     @property  
289+     @serializable .type_mapping (_DefinitionRepositoryHelper ) 
290+     @serializable .view (SchemaVersion1Dot6 ) 
291+     @serializable .xml_sequence (90 ) 
292+     def  definitions (self ) ->  Optional [DefinitionRepository ]:
293+         """ 
294+         The repository for definitions 
295+ 
296+         Returns: 
297+             `DefinitionRepository` 
298+         """ 
299+         return  self ._definitions 
300+ 
301+     @definitions .setter  
302+     def  definitions (self , definitions : DefinitionRepository ) ->  None :
303+         self ._definitions  =  definitions 
304+ 
285305    def  __eq__ (self , other : object ) ->  bool :
286306        if  isinstance (other , BomMetaData ):
287307            return  hash (other ) ==  hash (self )
0 commit comments