To remove "-" from the drop-down and to ensure that the attribute does not get assigned with the first value by default, please follow the below steps (through the studio and catalogvalidation.xml)to achieve the same:
----------Using studio-----------
-Create a datasource with the attribute as ID and ConfirmedRecordIndicator in the studio and give the value like below:
ID, ConfirmedRecordIndicator
1,
2, N
3, Y
Note: Here the ID 1 should have an empty value and for creating datasource refer below URL
"
https://docs.tibco.com/pub/bstudio-mdm/5.1.0/doc/html/GUID-3600EF21-C165-4EC0-A5B3-45FEDFFE9E17.html"
-Create rulebase which will contain link-type variable as datasource and declare a constraint with select action and use a link-type variable to access values from datasource.
-For select configuration check the attached screenshot (select_properties_window.PNG).
-Deploy the rulebase and datasource on the MDM application for the respective enterprise.
-Upload the datasource(if you have not selected the datasource while deploying)
-Verify the constraint by creating a record.
The purpose of creating an empty value record in datasource is, the select action by default takes the novalue as 'no', meaning it assigns the first value from the drop-down. In this case, it will assign empty value to attribute ConfirmedRecordIndicator.
So you will get only 'Y' and 'N' in the drop-down. For your reference, I have attached the screenshots of create record screen(Record Add_screen) and once we select the value from the drop-down(drop-down_attribute.PNG).
Note: all the screenshots are present in Details.zip file attached to this article
----------------Using catalogvalidation.xml file:----------------
Add below constraint in respective catalogvalidation file:
========
<constraint>
<name>TrueFalse</name>
<description>True or False.</description>
<usefor>
<var>Name</var>
</usefor>
<action>
<select novalue= "no">
<enum>
<const type= "string"> </const>
<const type= "string">T</const>
<const type= "string">F</const>
</enum>
</select>
</action>
</constraint>
========
Here, the first line has empty value so while executing constraint the first value gets assigned to attribute i.e empty value.
Note: we can not import the second option in the studio because the studio expects the value to all constants that we have defined in enum section, it can not allow us to specify an empty value. For this, I have attached a screenshot from the studio(Error_IN_STUDIO.png).