---
sourceDocument: Asset Management
sourceDocumentLink: https://www.servicenow.com/docs/r/it-asset-management

 Release :

    - brazil

ft:locale :

    - en-US

ft:publication_title :

    - Asset Management

ft:clusterId :

    - itam

bundleId :

    - itam

workflow :

    - Technology


---

# Software Component Model table

# Software Component Model table {#ariaid-title1}

Release version: Brazil  
Updated September 10, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes to read
Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of Software Component Model table

The Software Component Model table (cmdbsoftwarecomponentmodel) stores component model records used across various industries and solutions on the ServiceNow Platform.
It extends from the System Component Model table (cmdbswcomponentmodel) found in the Data Foundation Model application (sncmdbfoundation).
Show full answer Show less  
Records in this table are automatically created when a discovery model is normalized with a version set or manually normalized with a version set. A script, guided by the system property **com.snc.sam.softwarecomponent.choice.versionlevel**, generates software component models from normalized discovery models and controls the granularity of versioning (MAJOR, FULL, BOTH, NONE). By default, this property is set to BOTH, and values must be entered in lowercase.

If both FULL and MAJOR versions exist, two records are created; if only MAJOR exists, one record is created. Manual creation of software component model records is also supported. When using Basic or Professional Software Asset Management (SAM) applications, you can reference the Software Product table (**sampswproduct**); otherwise, software product names must be entered manually.

## Upgrade Information

Upon upgrading to the Zurich release or later, a scheduled job (**SAM - Generate software component model** ) runs once to generate component model records for all existing normalized discovery models. Afterwards, new normalized discovery models automatically trigger the **Create software component model** business rule to generate corresponding records.

Note that the Software Discovery Model table is available only if Basic or Professional SAM applications are installed.

## Discovery Model Considerations

* **System Property Changes:** Changes to system property preferences affect only newly created software component models; existing models retain their original settings.
* **Model Deletion or Modification:** Deleting or modifying a software component model does not cause the system to recreate it from the original discovery model.
* **Manual Re-normalization:** When discovery models are manually normalized with new values, existing software component models remain unchanged. A new software component model is created only if none exists for those values.  
The Software Component Model \[cmdb_software_component_model\] table stores component model records that serves industries and use cases across different solutions on the ServiceNow Platform.

## Overview of Software Component Model table {#software-component-model-table__section_vyz_2r1_phc}

The Software Component Model table extends from the System Component Model \[cmdb_sw_component_model\] table that resides in the Data Foundation Model (sn_cmdb_foundation) application. The Software Component Model table can consist
of various entities.  
A software component model record is automatically created whenever a discovery model meets either of the following conditions:

* Is normalized with a normalized version set.
* Is manually normalized with a normalized version set.
{#software-component-model-table__ul_bdx_zhl_qhc}  
A script runs to generate software component models from the normalized discovery models. This script uses the system property, com.snc.sam.software_component.choice.version_level, to determine the granularity of the normalized version. You can configure this system property to set the version level options, which include the following versions:

* MAJOR
* FULL
* BOTH
* NONE

{#software-component-model-table__ul_cdx_zhl_qhc}  
Note:  
The system property is configured to the BOTH version by default. You can modify this setting by selecting any of the other available options. When entering values, ensure they are in lowercase format. As an example, to set the system property to NONE, enter "none" in the value field.

Two records are created in the Software Model Component table when a FULL version and a MAJOR version exist for the normalized discovery model. However, only one record is created if only the MAJOR version exists.

You can also manually create a software component model record in the Software Component Model \[cmdb_software_component_model\] table. If you have the Basic Software Asset Management or the Software Asset Management Professional application while creating the record, you can reference the Software Product \[samp_sw_product\] table. If you are not using the Software Asset Management application, you need to type in the
software product name.

## Upgrade information {#software-component-model-table__section_bv3_gr1_phc}

When you upgrade to Zurich release and later releases, the scheduled job, SAM - Generate software component model does a one time run to generate component model records for all existing normalized discovery
models which are then stored in the Software Component Model table.  
After the upgrade, every time a new discovery model is normalized, the business rule, Create software component model that runs on the Software discovery model \[cmdb_sam_sw_discovery_model\] table gets triggered and automatically creates new software component model records for the new normalized discovery models.  
Note:  
The Software Discovery Model table is available if you have Basic Software Asset Management or the Software Asset Management Professional application running on your ServiceNow instance.

## Discovery model considerations {#software-component-model-table__section_dch_35p_phc}

The following are some considerations to keep in mind for discovery models:

* System property changes: When a system property preference changes, the existing software component models retain their original settings. Only newly created version models adopt the updated system property.
* Model deletion or modification: If you delete or modify a software component model, the system won't recreate it from the original discovery model.
* Manual re-normalization: When a discovery model is manually normalized with new values, the existing software component model remains as is. The system creates a new software component model only if one does not already exist.
{#software-component-model-table__ul_tpd_l5p_phc}

