Hi Harsha, Suranga,
You can definitely add your own search parameters, and this is in fact quite a normal thing to do.
Assuming you're talking about a server implementation, the usual pattern (for non-custom parameters) looks like:
@RequiredParam(name=Patient.SP_NAME) StringDt theName
But in this example, SP_NAME is really just a string constant for "name". If you wanted to define your own parameters, it's as simple as using your own strings, eg.
@RequiredParam(name="hairColour") StringDt theHairColour
Your server will then automatically declare that it supports this parameter in its conformance statement. You may also wish to add a @Description annotation to the parameter to give the conformance statement more information about what this parameter is used for. There's an example of using @Description here: