Personalizing patient registration fields

Thank you @arbaughj. also thanks @mksd for sharing the the example

I have added 5 new fields in Patient Registration Form here they are,

  1. Status (It is a concept)
  2. Birth Place (It is text field)
  3. Father’s Name (It is text field)
  4. Father’s Occupation (It is text field of size 60)
  5. Mother’s Name (It is text field)

the status should be dropdown. how should be the value of (“fragmentId”: “field/text”)?

here is the Registration App Configuration:

{
	"id": "referenceapplication.registrationapp.myRegisterPat",
	"instanceOf": "registrationapp.registerPatient",
	"label": "Register Patient",
	"description": "Create a new Patient Record",
	"extensions": [{
		"id": "referenceapplication.registrationapp.myRegisterPat.homepageLink",
		"extensionPointId": "org.openmrs.referenceapplication.homepageLink",
		"type": "link",
		"label": "referenceapplication.app.registerPatient.label",
		"url": "registrationapp/registerPatient.page?appId=referenceapplication.registrationapp.myRegisterPat",
		"icon": "icon-user",
		"order": 1,
		"requiredPrivilege": "App: registrationapp.registerPatient"
	}],
	"config": {
		"afterCreatedUrl": "/coreapps/clinicianfacing/patient.page?patientId={{patientId}}",
		"sections": [{
			"id": "personalInfo",
			"label": "Personal Info",
			"questions": [{
				"legend": "Status",
				"fields": [{
					"type": "personAttribute",
					"label": "Status",
					"formFieldName": "status",
					"uuid": "8d871f2a-c2cc-11de-8d13-0010c6dffd0f",
					"widget": {
						"providerName": "uicommons",
						"fragmentId": "field/text"
					},
					"cssClasses": ["required"]
				}]
			}, {
				"legend": "Birth Place",
				"fields": [{
					"type": "personAttribute",
					"label": "Birth Place",
					"formFieldName": "birthPlace",
					"uuid": "8d8718c2-c2cc-11de-8d13-0010c6dffd0f",
					"widget": {
						"providerName": "uicommons",
						"fragmentId": "field/text",
						"config": {
							"size": 60
						}
					}
				}]
			}]
		}, {
			"id": "contactInfo",
			"label": "registrationapp.patient.contactInfo.label",
			"questions": [{
				"legend": "Person.address",
				"fields": [{
					"type": "personAddress",
					"label": "registrationapp.patient.address.question",
					"widget": {
						"providerName": "uicommons",
						"fragmentId": "field/personAddress"
					}
				}]
			}, {
				"legend": "registrationapp.patient.phone.label",
				"id": "phoneNumberLabel",
				"fields": [{
					"type": "personAttribute",
					"label": "registrationapp.patient.phone.question",
					"formFieldName": "phoneNumber",
					"uuid": "14d4f066-15f5-102d-96e4-000c29c2a5d7",
					"widget": {
						"providerName": "uicommons",
						"fragmentId": "field/text"
					},
					"cssClasses": ["phone"]
				}]
			}]
		}, {
			"id": "nextOfKin",
			"label": "Next of Kin",
			"questions": [{
				"legend": "Father",
				"fields": [{
					"type": "personAttribute",
					"label": "Father's Name",
					"formFieldName": "fatherName",
					"uuid": "46f276cd-3c23-4f31-b251-1944ee5cf042",
					"widget": {
						"providerName": "uicommons",
						"fragmentId": "field/text"
					},
					"cssClasses": ["required"]
				}, {
					"type": "personAttribute",
					"label": "Father's Occupation",
					"formFieldName": "fatherOccupation",
					"uuid": "7ff7dfa1-3020-4bc2-b64c-fc3a3df50dc5",
					"widget": {
						"providerName": "uicommons",
						"fragmentId": "field/text",
						"config": {
							"size": 60
						}
					}
				}]
			}, {
				"legend": "Mother",
				"fields": [{
					"type": "personAttribute",
					"label": "Mother's Name",
					"formFieldName": "motherName",
					"uuid": "8d871d18-c2cc-11de-8d13-0010c6dffd0f",
					"widget": {
						"providerName": "uicommons",
						"fragmentId": "field/text"
					}
				}]
			}]
		}]
	}
}