:py:mod:`cyclonedx.model.service`
=================================

.. py:module:: cyclonedx.model.service

.. autoapi-nested-parse::

   This set of classes represents the data that is possible about known Services.

   .. note::
       See the CycloneDX Schema extension definition https://cyclonedx.org/docs/1.7/xml/#type_servicesType



Module Contents
---------------

Classes
~~~~~~~

.. autoapisummary::

   cyclonedx.model.service.Service




.. py:class:: Service(*, name: str, bom_ref: Optional[Union[str, cyclonedx.model.bom_ref.BomRef]] = None, provider: Optional[cyclonedx.model.contact.OrganizationalEntity] = None, group: Optional[str] = None, version: Optional[str] = None, description: Optional[str] = None, endpoints: Optional[collections.abc.Iterable[cyclonedx.model.XsUri]] = None, authenticated: Optional[bool] = None, x_trust_boundary: Optional[bool] = None, data: Optional[collections.abc.Iterable[cyclonedx.model.DataClassification]] = None, licenses: Optional[collections.abc.Iterable[cyclonedx.model.license.License]] = None, external_references: Optional[collections.abc.Iterable[cyclonedx.model.ExternalReference]] = None, properties: Optional[collections.abc.Iterable[cyclonedx.model.Property]] = None, services: Optional[collections.abc.Iterable[Service]] = None, release_notes: Optional[cyclonedx.model.release_note.ReleaseNotes] = None)


   Bases: :py:obj:`cyclonedx.model.dependency.Dependable`

   Class that models the `service` complex type in the CycloneDX schema.

   .. note::
       See the CycloneDX schema: https://cyclonedx.org/docs/1.7/xml/#type_service

   .. py:property:: bom_ref
      :type: cyclonedx.model.bom_ref.BomRef

      An optional identifier which can be used to reference the service elsewhere in the BOM. Uniqueness is enforced
      within all elements and children of the root-level bom element.

      Returns:
         `BomRef` unique identifier for this Service


   .. py:property:: provider
      :type: Optional[cyclonedx.model.contact.OrganizationalEntity]

      Get the organization that provides the service.

      Returns:
          `OrganizationalEntity` if set else `None`


   .. py:property:: group
      :type: Optional[str]

      The grouping name, namespace, or identifier. This will often be a shortened, single name of the company or
      project that produced the service or domain name. Whitespace and special characters should be avoided.

      Returns:
          `str` if provided else `None`


   .. py:property:: name
      :type: str

      The name of the service. This will often be a shortened, single name of the service.

      Returns:
          `str`


   .. py:property:: version
      :type: Optional[str]

      The service version.

      Returns:
          `str` if set else `None`


   .. py:property:: description
      :type: Optional[str]

      Specifies a description for the service.

      Returns:
          `str` if set else `None`


   .. py:property:: endpoints
      :type: SortedSet[XsUri]

      A list of endpoints URI's this service provides.

      Returns:
          Set of `XsUri`


   .. py:property:: authenticated
      :type: Optional[bool]

      A boolean value indicating if the service requires authentication. A value of true indicates the service
      requires authentication prior to use.

      A value of false indicates the service does not require authentication.

      Returns:
          `bool` if set else `None`


   .. py:property:: x_trust_boundary
      :type: Optional[bool]

      A boolean value indicating if use of the service crosses a trust zone or boundary. A value of true indicates
      that by using the service, a trust boundary is crossed.

      A value of false indicates that by using the service, a trust boundary is not crossed.

      Returns:
          `bool` if set else `None`


   .. py:property:: data
      :type: SortedSet[DataClassification]

      Specifies the data classification.

      Returns:
          Set of `DataClassification`


   .. py:property:: licenses
      :type: cyclonedx.model.license.LicenseRepository

      A optional list of statements about how this Service is licensed.

      Returns:
          Set of `LicenseChoice`


   .. py:property:: external_references
      :type: SortedSet[ExternalReference]

      Provides the ability to document external references related to the Service.

      Returns:
          Set of `ExternalReference`


   .. py:property:: properties
      :type: SortedSet[Property]

      Provides the ability to document properties in a key/value store. This provides flexibility to include data not
      officially supported in the standard without having to use additional namespaces or create extensions.

      Return:
          Set of `Property`


   .. py:property:: services
      :type: SortedSet['Service']

      A list of services included or deployed behind the parent service.

      This is not a dependency tree.

      It provides a way to specify a hierarchical representation of service assemblies.

      Returns:
          Set of `Service`


   .. py:property:: release_notes
      :type: Optional[cyclonedx.model.release_note.ReleaseNotes]

      Specifies optional release notes.

      Returns:
          `ReleaseNotes` or `None`



