String property label from uischema.json is not used
On the right the jsforms example and on the left a example from go-jsonforms

Given a testcase with this data.json, schema.json and uischema.json
// data.json
{
"FirstName": true,
"Lastname": false
}
// schema.json
{
"type": "object",
"properties": {
"FirstName": {
"type": "string",
"description": "FirstName description"
},
"Lastname": {
"type": "string",
"description": "Lastname description"
}
}
}
// uischema.json
{
"type": "VerticalLayout",
"elements": [
{
"type": "Control",
"scope": "#/properties/FirstName"
},
{
"type": "Control",
"scope": "#/properties/Lastname",
"label": "Last Name"
}
]
}
Then this html is created
<fieldset>
<div>
<div class="form-group column col-12">
<input class="form-input" id="#/properties/FirstName"
name="#/properties/FirstName" type="text"
aria-describedby="#/properties/FirstName-helper" value="John">
<small id="-helper">FirstName description</small>
</div>
<div class="form-group column col-12">
<input class="form-input" id="#/properties/Lastname"
name="#/properties/Lastname"
type="text" aria-describedby="#/properties/Lastname-helper" value="Doe">
<small id="-helper">Lastname description</small>
</div>
</div>
</fieldset>
GOT
- The property
FirstName with type string is rendered as a input type text. It has no <label>-tag but helper text in a <small>-tag. The schema.description is displayed as helper text below the node.
- The property
Lastname with type string is rendered as a input type text. It has no <label>-tag but helper text in a <small>-tag. The schema.description is displayed as helper text below the node.
WANT
- Both should use a
<label> tag
- The label text for
FirstName should be 'FirstName' since this is the schema.property-name
- The label text for
Lastname should be Last Name from elements[1].label in uischema.json
String property label from uischema.json is not used
On the right the jsforms example and on the left a example from

go-jsonformsGiven a testcase with this
data.json,schema.jsonanduischema.jsonThen this html is created
GOT
FirstNamewith typestringis rendered as a input type text. It has no<label>-tag but helper text in a<small>-tag. Theschema.descriptionis displayed as helper text below the node.Lastnamewith typestringis rendered as a input type text. It has no<label>-tag but helper text in a<small>-tag. Theschema.descriptionis displayed as helper text below the node.WANT
<label>tagFirstNameshould be 'FirstName' since this is theschema.property-nameLastnameshould beLast Namefromelements[1].labelinuischema.json