I have a LAMP application that needs to accept external data sources from our users. Generally, these are just simple lists (e.g. so the user can have a customized drop down list). However, I am seeing the need for more complex data. For example, two customized drop downs wherein the second drop down is dependent on the selection in the first drop down.
Is there a way to store external relational data in my database in such a way I can query it also?
Not in MySQL, unless you define a structure for it, break up the data and store it in that structure. It would however be cumbersome. You can define a hierarchical structure in a single table by making a reference to a parent item in the same table. This way you could store even XML elements and their attributes in a single database, having only three tables for document, elements and attributes.
Querying these tables would be very hard, especially in MySQL. In Oracle you got CONNECT BY which allows recursive queries, but it is slow.
Maybe you should look into No-SQL databases like Mongo, which is better designed for these kind of tasks.