Your second query has a basically correct syntax but, problem is your inline query should return a single value and as Oracle complains it's returning several rows.

By the way... on
select b.xml_name from application_xml_info_add b where a.form_id b.form_id)

I can see no "=" sign in between a.form_id and b.form_id