In short, these fields are configured to be arrays by your schema, this is why they are written as JSON arrays to the response. Even if they only have one member in your samples.
You need to configure them as multiValued="false"
if they are only single-valued.
The fields you worry about title
and desc
are configured as multiValued="true"
as you can see in this excerpt from your schema
<field name="title" type="text_general" indexed="true" stored="true" multiValued="true"/>
<field name="desc" type="text_general" indexed="true" stored="true" multiValued="true"/>
If you scroll up a little (to line 82) in your schema, you can read what this stands for
multiValued: true if this field may contain multiple values per document
You can read what this is good for and what the consequences are in several sources
- here on SO - What is the use of "multiValued" field type in Solr?
- on Solr's Nabble - How are multivalued fields used?