Interface ManageReferenceData
- All Known Implementing Classes:
ReferenceDataManager
public interface ManageReferenceData
ManageReferenceData provides the API operations to create and maintain lists of valid
value definitions grouped into a valid value set. Both valid value definitions and valid value sets have
the same attributes and so inherit from ValidValue where all the attributes are defined.
A set is just grouping of valid values. Valid value definitions and set can be nested many times in other
valid value sets.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
assignReferenceValueToItem
(String userId, String validValueGUID, String referenceableGUID, ReferenceValueAssignmentProperties properties) Link a valid value as a reference value to a referencable to act as a tag/classification to help with locating and grouping the referenceable.void
assignValidValueToConsumer
(String userId, String validValueGUID, String consumerGUID, boolean strictRequirement) Link a valid value typically to a schema element or glossary term to show that it uses the valid values.void
attachValidValueToSet
(String userId, String setGUID, String validValueGUID, boolean isDefaultValue) Create a link between a valid value set or definition and a set.void
classifyAssetAsReferenceData
(String userId, String assetGUID) Add the ReferenceData classification to an asset.createValidValueDefinition
(String userId, String setGUID, boolean isDefaultValue, String qualifiedName, String displayName, String description, String usage, String scope, String preferredValue, String dataType, Map<String, String> additionalProperties, String typeName, Map<String, Object> extendedProperties) Create a new valid value definition.createValidValueSet
(String userId, String qualifiedName, String displayName, String description, String usage, String scope, Map<String, String> additionalProperties, String typeName, Map<String, Object> extendedProperties) Create a new valid value set.void
declassifyAssetAsReferenceData
(String userId, String assetGUID) Remove the ReferenceData classification form an Asset.void
deleteValidValue
(String userId, String validValueGUID, String qualifiedName) Remove the valid value form the repository.void
detachValidValueFromSet
(String userId, String setGUID, String validValueGUID) Remove the link between a valid value and a set it is a member of.findValidValues
(String userId, String searchString, int startFrom, int pageSize) Locate valid values that match the search string.getReferenceValueAssignedItems
(String userId, String validValueGUID, int startFrom, int pageSize) Page through the list of referenceables that have this valid value as a reference value.getReferenceValueAssignments
(String userId, String referenceableGUID, int startFrom, int pageSize) Page through the list of assigned reference values for a referenceable.getSetsForValidValue
(String userId, String validValueGUID, int startFrom, int pageSize) Page through the list of valid value sets that a valid value definition/set belongs to.getValidValueByGUID
(String userId, String validValueGUID) Retrieve a specific valid value from the repository.getValidValueByName
(String userId, String validValueName, int startFrom, int pageSize) Retrieve a specific valid value from the repository.getValidValueMappings
(String userId, String validValueGUID, int startFrom, int pageSize) Page through the list of mappings for a valid value.getValidValuesAssignmentConsumers
(String userId, String validValueGUID, int startFrom, int pageSize) Page through the list of consumers for a valid value.getValidValuesAssignmentDefinition
(String userId, String referenceableGUID, int startFrom, int pageSize) Page through the list of valid values assigned to referenceable element.getValidValueSetMembers
(String userId, String validValueSetGUID, int startFrom, int pageSize) Page through the members of a valid value set.getValidValuesImplementationAssets
(String userId, String validValueGUID, int startFrom, int pageSize) Page through the list of implementations for a valid value.getValidValuesImplementationDefinitions
(String userId, String assetGUID, int startFrom, int pageSize) Page through the list of valid values defining the content of a reference data asset.getValidValuesMappings
(String userId, String validValueGUID, int startFrom, int pageSize) Page through the list of mapping relationships associated with a valid value.void
linkValidValueToImplementation
(String userId, String validValueGUID, String assetGUID, String symbolicName, String implementationValue, Map<String, String> additionalValues) Link a valid value to an asset that provides the implementation.void
mapValidValues
(String userId, String validValue1GUID, String validValue2GUID, String associationDescription, int confidence, String steward, String notes) Link together 2 valid values from different sets that have equivalent values/meanings.void
unassignReferenceValueFromItem
(String userId, String validValueGUID, String referenceableGUID) Remove the reference value link between a valid value and a referenceable (item).void
unassignValidValueFromConsumer
(String userId, String validValueGUID, String consumerGUID) Remove the link between a valid value and a consumer.void
unlinkValidValueFromImplementation
(String userId, String validValueGUID, String assetGUID) Remove the link between a valid value and an implementing asset.void
unmapValidValues
(String userId, String validValue1GUID, String validValue2GUID) Remove the reference value link between a valid value and a referenceable (item).void
updateValidValue
(String userId, String validValueGUID, String qualifiedName, String displayName, String description, String usage, String scope, String preferredValue, String dataType, boolean isDeprecated, Map<String, String> additionalProperties, boolean isMergeUpdate, String typeName, Map<String, Object> extendedProperties) Update the properties of the valid value.
-
Method Details
-
createValidValueSet
String createValidValueSet(String userId, String qualifiedName, String displayName, String description, String usage, String scope, Map<String, String> additionalProperties, String typeName, Map<String, throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionObject> extendedProperties) Create a new valid value set. This just creates the Set itself. Members are added either as they are created, or they can be attached to a set after they are created.- Parameters:
userId
- calling user.qualifiedName
- unique name.displayName
- displayable descriptive name.description
- further information.usage
- how/when should this set be used.scope
- what is the scope of this set's values.additionalProperties
- additional properties for this set.typeName
- name of subtype of the definition (or null to use the standard open type)extendedProperties
- properties that need to be populated into a subtype (or null for the standard open type).- Returns:
- unique identifier for the new set
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
createValidValueDefinition
String createValidValueDefinition(String userId, String setGUID, boolean isDefaultValue, String qualifiedName, String displayName, String description, String usage, String scope, String preferredValue, String dataType, Map<String, String> additionalProperties, String typeName, Map<String, throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionObject> extendedProperties) Create a new valid value definition.- Parameters:
userId
- calling user.setGUID
- unique identifier of the set to attach this to.isDefaultValue
- is this the default value for the set?qualifiedName
- unique name.displayName
- displayable descriptive name.description
- further information.usage
- how/when should this value be used.scope
- what is the scope of the values.preferredValue
- the value that should be used in an implementation if possible.dataType
- the data type of the preferred value.additionalProperties
- additional properties for this definition.typeName
- name of subtype of the definition (or null to use the standard open type)extendedProperties
- properties that need to be populated into a subtype (or null for the standard open type).- Returns:
- unique identifier for the new definition
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
updateValidValue
void updateValidValue(String userId, String validValueGUID, String qualifiedName, String displayName, String description, String usage, String scope, String preferredValue, String dataType, boolean isDeprecated, Map<String, String> additionalProperties, boolean isMergeUpdate, String typeName, Map<String, throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionObject> extendedProperties) Update the properties of the valid value. All properties are updated. If only changing some if the properties, retrieve the current values from the repository and pass existing values back on this call if they are not to change.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of the valid value.qualifiedName
- unique name.displayName
- displayable descriptive name.description
- further information.usage
- how/when should this value be used.scope
- what is the scope of the values.preferredValue
- the value that should be used in an implementation if possible.dataType
- the data type of the preferred value.isDeprecated
- is this value deprecated?additionalProperties
- additional properties for this valid value.isMergeUpdate
- should the new properties be merged with existing properties (true) or completely replace them (false)?typeName
- name of subtype of the definition (or null to use the standard open type)extendedProperties
- properties that need to be populated into a subtype.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
deleteValidValue
void deleteValidValue(String userId, String validValueGUID, String qualifiedName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the valid value form the repository. All links to it are deleted too.- Parameters:
userId
- calling uservalidValueGUID
- unique identifier of the value to deletequalifiedName
- unique name of the value to delete. This is used to verify that the correct valid value is being deleted.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
attachValidValueToSet
void attachValidValueToSet(String userId, String setGUID, String validValueGUID, boolean isDefaultValue) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a link between a valid value set or definition and a set. This means the valid value is a member of the set.- Parameters:
userId
- calling user.setGUID
- unique identifier of the set.validValueGUID
- unique identifier of the valid value to add to the set.isDefaultValue
- is this the default value for the set?- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
detachValidValueFromSet
void detachValidValueFromSet(String userId, String setGUID, String validValueGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the link between a valid value and a set it is a member of.- Parameters:
userId
- calling usersetGUID
- owning setvalidValueGUID
- unique identifier of the member to be removed.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
linkValidValueToImplementation
void linkValidValueToImplementation(String userId, String validValueGUID, String assetGUID, String symbolicName, String implementationValue, Map<String, String> additionalValues) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionLink a valid value to an asset that provides the implementation. Typically this method is used to link a valid value set to a code table.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of the valid value.assetGUID
- unique identifier of the asset that implements the valid value.symbolicName
- lookup name for valid valueimplementationValue
- value used in implementationadditionalValues
- additional values stored under the symbolic name- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
classifyAssetAsReferenceData
void classifyAssetAsReferenceData(String userId, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Add the ReferenceData classification to an asset. IF the asset is already classified in this way, the method is a no-op.- Parameters:
userId
- calling user.assetGUID
- unique identifier of the asset that contains reference data.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
unlinkValidValueFromImplementation
void unlinkValidValueFromImplementation(String userId, String validValueGUID, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the link between a valid value and an implementing asset.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of the valid value.assetGUID
- unique identifier of the asset that used to implement the valid value.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
declassifyAssetAsReferenceData
void declassifyAssetAsReferenceData(String userId, String assetGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the ReferenceData classification form an Asset. If the asset was not classified in this way, this call is a no-op.- Parameters:
userId
- calling user.assetGUID
- unique identifier of asset.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
assignValidValueToConsumer
void assignValidValueToConsumer(String userId, String validValueGUID, String consumerGUID, boolean strictRequirement) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link a valid value typically to a schema element or glossary term to show that it uses the valid values.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of the valid value.consumerGUID
- unique identifier of the element to link to.strictRequirement
- the valid values defines the only values that are permitted.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
unassignValidValueFromConsumer
void unassignValidValueFromConsumer(String userId, String validValueGUID, String consumerGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the link between a valid value and a consumer.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of the valid value.consumerGUID
- unique identifier of the element to remove the link from.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
assignReferenceValueToItem
void assignReferenceValueToItem(String userId, String validValueGUID, String referenceableGUID, ReferenceValueAssignmentProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link a valid value as a reference value to a referencable to act as a tag/classification to help with locating and grouping the referenceable.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of the valid value.referenceableGUID
- unique identifier of the element to link to.properties
- details of the relationship- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
unassignReferenceValueFromItem
void unassignReferenceValueFromItem(String userId, String validValueGUID, String referenceableGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the reference value link between a valid value and a referenceable (item).- Parameters:
userId
- calling user.validValueGUID
- unique identifier of the valid value.referenceableGUID
- unique identifier of the element to remove the link from.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
mapValidValues
void mapValidValues(String userId, String validValue1GUID, String validValue2GUID, String associationDescription, int confidence, String steward, String notes) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link together 2 valid values from different sets that have equivalent values/meanings.- Parameters:
userId
- calling user.validValue1GUID
- unique identifier of the valid value.validValue2GUID
- unique identifier of the other valid value to link to.associationDescription
- how are the valid values related?confidence
- how confident is the steward that this mapping is correct (0-100).steward
- identifier of stewardnotes
- additional notes from the steward- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
unmapValidValues
void unmapValidValues(String userId, String validValue1GUID, String validValue2GUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the reference value link between a valid value and a referenceable (item).- Parameters:
userId
- calling user.validValue1GUID
- unique identifier of the valid value.validValue2GUID
- unique identifier of the other valid value element to remove the link from.- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValueByGUID
ValidValueElement getValidValueByGUID(String userId, String validValueGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve a specific valid value from the repository.- Parameters:
userId
- calling uservalidValueGUID
- unique identifier of the valid value.- Returns:
- Valid value bean
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValueByName
List<ValidValueElement> getValidValueByName(String userId, String validValueName, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve a specific valid value from the repository. Duplicates may be returned if multiple valid values have been assigned the same qualified name.- Parameters:
userId
- calling uservalidValueName
- qualified name of the valid value.startFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- Valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
findValidValues
List<ValidValueElement> findValidValues(String userId, String searchString, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Locate valid values that match the search string. It considers the names, description, scope, usage and preferred value.- Parameters:
userId
- calling usersearchString
- string value to look for - may contain RegEx characters.startFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValueSetMembers
List<ValidValueElement> getValidValueSetMembers(String userId, String validValueSetGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the members of a valid value set.- Parameters:
userId
- calling user.validValueSetGUID
- unique identifier of the valid value set.startFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getSetsForValidValue
List<ValidValueElement> getSetsForValidValue(String userId, String validValueGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of valid value sets that a valid value definition/set belongs to.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of valid value to querystartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValuesAssignmentConsumers
List<ValidValueAssignmentConsumerElement> getValidValuesAssignmentConsumers(String userId, String validValueGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of consumers for a valid value.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of valid value to querystartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of referenceable beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValuesAssignmentDefinition
List<ValidValueAssignmentDefinitionElement> getValidValuesAssignmentDefinition(String userId, String referenceableGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of valid values assigned to referenceable element.- Parameters:
userId
- calling userreferenceableGUID
- unique identifier of anchoring referenceablestartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of valid value consumer beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValuesImplementationAssets
List<ValidValueImplAssetElement> getValidValuesImplementationAssets(String userId, String validValueGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of implementations for a valid value.- Parameters:
userId
- calling user.validValueGUID
- unique identifier of valid value to querystartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of asset beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValuesImplementationDefinitions
List<ValidValueImplDefinitionElement> getValidValuesImplementationDefinitions(String userId, String assetGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of valid values defining the content of a reference data asset. This is always called from the assetHandler after it has checked that the asset is in the right zone.- Parameters:
userId
- calling userassetGUID
- unique identifier of asset to querystartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValueMappings
List<ValidValueMappingElement> getValidValueMappings(String userId, String validValueGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of mappings for a valid value. These are other valid values from different valid value sets that are equivalent in some way. The association description covers the type of association.- Parameters:
userId
- calling uservalidValueGUID
- unique identifier of valid value to querystartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of mappings to other valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getValidValuesMappings
List<ValidValuesMappingElement> getValidValuesMappings(String userId, String validValueGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of mapping relationships associated with a valid value. These are other valid values from different valid value sets that are equivalent in some way. The association description covers the type of association.- Parameters:
userId
- calling uservalidValueGUID
- unique identifier of valid value to querystartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of mappings to other valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getReferenceValueAssignedItems
List<ReferenceValueAssignmentItemElement> getReferenceValueAssignedItems(String userId, String validValueGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of referenceables that have this valid value as a reference value.- Parameters:
userId
- calling uservalidValueGUID
- unique identifier of valid value to querystartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of referenceable beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getReferenceValueAssignments
List<ReferenceValueAssignmentDefinitionElement> getReferenceValueAssignments(String userId, String referenceableGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Page through the list of assigned reference values for a referenceable.- Parameters:
userId
- calling userreferenceableGUID
- unique identifier of assigned itemstartFrom
- paging starting pointpageSize
- maximum number of return values.- Returns:
- list of valid value beans
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-