Interface AssetClassificationInterface
- All Known Implementing Classes:
AssetOwner
,AvroFileAssetOwner
,CSVFileAssetOwner
,FileSystemAssetOwner
,ValidValuesAssetOwner
public interface AssetClassificationInterface
The AssetClassificationInterface is used by the asset owner to add classifications and detailed definitions
to the asset. Typically, this interface is used after the discovery services have explored the asset's content
and created helpful annotations to guide the asset owner.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addAssetOrigin
(String userId, String assetGUID, String organizationGUID, String businessCapabilityGUID, Map<String, String> otherOriginValues) Add or replace the asset origin classification to an asset.void
addGovernanceDefinitionToElement
(String userId, String definitionGUID, String elementGUID) Link a governance definition to an element using the GovernedBy relationship.void
addSecurityTags
(String userId, String assetGUID, String assetElementGUID, List<String> securityLabels, Map<String, Object> securityProperties, Map<String, List<String>> accessGroups) Add or replace the security tags for an asset or one of its elements.void
addSemanticAssignment
(String userId, String assetGUID, String glossaryTermGUID, String assetElementGUID) Create a simple relationship between a glossary term and an element in an Asset description (typically an attribute in the schema).void
addSemanticAssignment
(String userId, String assetGUID, String assetElementGUID, String glossaryTermGUID, SemanticAssignmentProperties properties) Create a semantic assignment relationship between a glossary term and an element (normally a schema attribute, data field or asset).void
addTemplateClassification
(String userId, String assetGUID, String name, String versionIdentifier, String description, Map<String, String> additionalProperties) Classify an asset as suitable to be used as a template for cataloguing assets of a similar types.void
clearConfidenceClassification
(String userId, String elementGUID) Remove the confidence classification from the element.void
clearConfidentialityClassification
(String userId, String elementGUID) Remove the confidence classification from the element.void
clearCriticalityClassification
(String userId, String elementGUID) Remove the criticality classification from the element.void
clearElementAsDataField
(String userId, String elementGUID) Remove the data field designation from the element.void
clearRetentionClassification
(String userId, String elementGUID) Remove the retention classification from the element.void
publishAsset
(String userId, String assetGUID) Update the zones for a specific asset to the zone list specified in the publishZones.void
removeAssetOrigin
(String userId, String assetGUID) Remove the asset origin classification to an asset.void
removeAssetOwner
(String userId, String assetGUID) Remove the ownership classification from an asset.void
removeGovernanceDefinitionFromElement
(String userId, String definitionGUID, String elementGUID) Remove the GovernedBy relationship between a governance definition and an element.void
removeSecurityTags
(String userId, String assetGUID, String assetElementGUID) Remove the security tags classification to an asset or one of its elements.void
removeSemanticAssignment
(String userId, String assetGUID, String glossaryTermGUID, String assetElementGUID) Remove the relationship between a glossary term and an element in an Asset description (typically a field in the schema).void
removeTemplateClassification
(String userId, String assetGUID) Remove the classification that indicates that this asset can be used as a template.void
setConfidenceClassification
(String userId, String elementGUID, GovernanceClassificationProperties properties) Classify/reclassify the element (typically an asset) to indicate the level of confidence that the organization has that the data is complete, accurate and up-to-date.void
setConfidentialityClassification
(String userId, String elementGUID, GovernanceClassificationProperties properties) Classify/reclassify the element (typically a data field, schema attribute or glossary term) to indicate the level of confidentiality that any data associated with the element should be given.void
setCriticalityClassification
(String userId, String elementGUID, GovernanceClassificationProperties properties) Classify/reclassify the element (typically an asset) to indicate how critical the element (or associated resource) is to the organization.void
setElementAsDataField
(String userId, String elementGUID, DataFieldValuesProperties properties) Classify the element to indicate that it describes a data field and supply properties that describe the characteristics of the data values found within.void
setRetentionClassification
(String userId, String elementGUID, RetentionClassificationProperties properties) Classify/reclassify the element (typically an asset) to indicate how long the element (or associated resource) is to be retained by the organization.void
updateAssetOwner
(String userId, String assetGUID, String ownerId, String ownerTypeName, String ownerPropertyName) Update the owner information for a specific asset.void
updateAssetZones
(String userId, String assetGUID, List<String> assetZones) Update the zones for a specific asset.void
withdrawAsset
(String userId, String assetGUID) Update the zones for a specific asset to the zone list specified in the defaultZones.
-
Method Details
-
addSemanticAssignment
void addSemanticAssignment(String userId, String assetGUID, String glossaryTermGUID, String assetElementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a simple relationship between a glossary term and an element in an Asset description (typically an attribute in the schema).- Parameters:
userId
- calling userassetGUID
- unique identifier of assetglossaryTermGUID
- unique identifier of the glossary termassetElementGUID
- element to link it to - its type must inherit from Referenceable. If null then the assetGUID is used.- Throws:
InvalidParameterException
- one of the parameters is null or invalidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
addSemanticAssignment
void addSemanticAssignment(String userId, String assetGUID, String assetElementGUID, String glossaryTermGUID, SemanticAssignmentProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a semantic assignment relationship between a glossary term and an element (normally a schema attribute, data field or asset). This relationship indicates that the data associated with the element meaning matches the description in the glossary term.- Parameters:
userId
- calling userassetGUID
- unique identifier of assetassetElementGUID
- unique identifier of the element that is being assigned to the glossary termglossaryTermGUID
- unique identifier of the glossary term that provides the meaningproperties
- properties for relationship- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
removeSemanticAssignment
void removeSemanticAssignment(String userId, String assetGUID, String glossaryTermGUID, String assetElementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the relationship between a glossary term and an element in an Asset description (typically a field in the schema).- Parameters:
userId
- calling userassetGUID
- unique identifier of assetglossaryTermGUID
- unique identifier of the glossary termassetElementGUID
- element to link it to - its type must inherit from Referenceable. If null then the assetGUID is used.- Throws:
InvalidParameterException
- one of the parameters is null or invalidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
addAssetOrigin
void addAssetOrigin(String userId, String assetGUID, String organizationGUID, String businessCapabilityGUID, Map<String, String> otherOriginValues) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionAdd or replace the asset origin classification to an asset.- Parameters:
userId
- calling userassetGUID
- unique identifier of assetorganizationGUID
- Unique identifier (GUID) of the organization where this asset originated from - or nullbusinessCapabilityGUID
- Unique identifier (GUID) of the business capability where this asset originated from.otherOriginValues
- Descriptive labels describing origin of the asset- Throws:
InvalidParameterException
- entity not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
removeAssetOrigin
void removeAssetOrigin(String userId, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the asset origin classification to an asset.- Parameters:
userId
- calling userassetGUID
- unique identifier of asset- Throws:
InvalidParameterException
- entity not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
publishAsset
void publishAsset(String userId, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the zones for a specific asset to the zone list specified in the publishZones.- Parameters:
userId
- calling userassetGUID
- unique identifier for the asset to update- Throws:
InvalidParameterException
- entity not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
withdrawAsset
void withdrawAsset(String userId, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the zones for a specific asset to the zone list specified in the defaultZones.- Parameters:
userId
- calling userassetGUID
- unique identifier for the asset to update- Throws:
InvalidParameterException
- entity not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
updateAssetZones
void updateAssetZones(String userId, String assetGUID, List<String> assetZones) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the zones for a specific asset.- Parameters:
userId
- calling userassetGUID
- unique identifier for the asset to updateassetZones
- list of zones for the asset - these values override the current values - null means belongs to no zones.- Throws:
InvalidParameterException
- guid or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
updateAssetOwner
void updateAssetOwner(String userId, String assetGUID, String ownerId, String ownerTypeName, String ownerPropertyName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the owner information for a specific asset.- Parameters:
userId
- calling userassetGUID
- unique identifier for the asset to updateownerId
- unique identifier/property of the owner - or null to clear the fieldownerTypeName
- name of the type of id provided above - or null to clear the fieldownerPropertyName
- name of the property that describes the ownerId- Throws:
InvalidParameterException
- userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
removeAssetOwner
void removeAssetOwner(String userId, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the ownership classification from an asset.- Parameters:
userId
- calling userassetGUID
- asset where the classification needs to be removed.- Throws:
InvalidParameterException
- asset or element not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
addSecurityTags
void addSecurityTags(String userId, String assetGUID, String assetElementGUID, List<String> securityLabels, Map<String, Object> securityProperties, Map<String, throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionList<String>> accessGroups) Add or replace the security tags for an asset or one of its elements.- Parameters:
userId
- calling userassetGUID
- unique identifier of assetassetElementGUID
- element to link it to - its type must inherit from Referenceable. If null then the assetGUID is used.securityLabels
- list of security labels defining the security characteristics of the elementsecurityProperties
- Descriptive labels describing the security properties of the elementaccessGroups
- map from operation to list of security groups- Throws:
InvalidParameterException
- asset or element not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
removeSecurityTags
void removeSecurityTags(String userId, String assetGUID, String assetElementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the security tags classification to an asset or one of its elements.- Parameters:
userId
- calling userassetGUID
- unique identifier of assetassetElementGUID
- element where the security tags need to be removed. If null then the assetGUID is used- Throws:
InvalidParameterException
- asset or element not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
addTemplateClassification
void addTemplateClassification(String userId, String assetGUID, String name, String versionIdentifier, String description, Map<String, String> additionalProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionClassify an asset as suitable to be used as a template for cataloguing assets of a similar types.- Parameters:
userId
- calling userassetGUID
- unique identifier of the asset to classifyname
- name of the templateversionIdentifier
- version identifier for the template eg 1.0description
- description of when, where and how to use the templateadditionalProperties
- any additional properties- Throws:
InvalidParameterException
- asset or element not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
removeTemplateClassification
void removeTemplateClassification(String userId, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the classification that indicates that this asset can be used as a template.- Parameters:
userId
- calling userassetGUID
- unique identifier of the asset to declassify- Throws:
InvalidParameterException
- asset or element not known, null userId or guidPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
setElementAsDataField
void setElementAsDataField(String userId, String elementGUID, DataFieldValuesProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Classify the element to indicate that it describes a data field and supply properties that describe the characteristics of the data values found within.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to updateproperties
- descriptive properties for the data field- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
clearElementAsDataField
void clearElementAsDataField(String userId, String elementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the data field designation from the element.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to update- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
setConfidenceClassification
void setConfidenceClassification(String userId, String elementGUID, GovernanceClassificationProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Classify/reclassify the element (typically an asset) to indicate the level of confidence that the organization has that the data is complete, accurate and up-to-date. The level of confidence is expressed by the levelIdentifier property.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to classifyproperties
- details of the classification- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
clearConfidenceClassification
void clearConfidenceClassification(String userId, String elementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the confidence classification from the element. This normally occurs when the organization has lost track of the level of confidence to assign to the element.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to unclassify- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
setCriticalityClassification
void setCriticalityClassification(String userId, String elementGUID, GovernanceClassificationProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Classify/reclassify the element (typically an asset) to indicate how critical the element (or associated resource) is to the organization. The level of criticality is expressed by the levelIdentifier property.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to classifyproperties
- details of the classification- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
clearCriticalityClassification
void clearCriticalityClassification(String userId, String elementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the criticality classification from the element. This normally occurs when the organization has lost track of the level of criticality to assign to the element.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to unclassify- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
setConfidentialityClassification
void setConfidentialityClassification(String userId, String elementGUID, GovernanceClassificationProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Classify/reclassify the element (typically a data field, schema attribute or glossary term) to indicate the level of confidentiality that any data associated with the element should be given. If the classification is attached to a glossary term, the level of confidentiality is a suggestion for any element linked to the glossary term via the SemanticAssignment classification. The level of confidence is expressed by the levelIdentifier property.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to classifyproperties
- details of the classification- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
clearConfidentialityClassification
void clearConfidentialityClassification(String userId, String elementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the confidence classification from the element. This normally occurs when the organization has lost track of the level of confidentiality to assign to the element.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to unclassify- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
setRetentionClassification
void setRetentionClassification(String userId, String elementGUID, RetentionClassificationProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Classify/reclassify the element (typically an asset) to indicate how long the element (or associated resource) is to be retained by the organization. The policy to apply to the element/resource is captured by the retentionBasis property. The dates after which the element/resource is archived and then deleted are specified in the archiveAfter and deleteAfter properties respectively.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to classifyproperties
- details of the classification- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
clearRetentionClassification
void clearRetentionClassification(String userId, String elementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the retention classification from the element. This normally occurs when the organization has lost track of, or no longer needs to track the retention period to assign to the element.- Parameters:
userId
- calling userelementGUID
- unique identifier of the metadata element to unclassify- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
addGovernanceDefinitionToElement
void addGovernanceDefinitionToElement(String userId, String definitionGUID, String elementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link a governance definition to an element using the GovernedBy relationship.- Parameters:
userId
- calling userdefinitionGUID
- identifier of the governance definition to linkelementGUID
- unique identifier of the metadata element to link- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
removeGovernanceDefinitionFromElement
void removeGovernanceDefinitionFromElement(String userId, String definitionGUID, String elementGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the GovernedBy relationship between a governance definition and an element.- Parameters:
userId
- calling userdefinitionGUID
- identifier of the governance definition to linkelementGUID
- unique identifier of the metadata element to update- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-