Is there database of definitions for OSM tags?

I am thinking of making small app to help me easily enter my data to OSM and I need my app to know all OSM tags and their possible values. Is there database with suck definitions or I have to pull that form wiki by hand ?

All tags are key-value-pairs, and both key and value are simply strings: every user can create new keys and values… There are some conventions, but I do not know if a downloadable version of them exists.
[Edit] Just stumbled upon a new thread in the German forum: http://forum.openstreetmap.org/viewtopic.php?id=16012 They suggest to use the presets of JOSM, available at http://josm.openstreetmap.de/svn/trunk/data/defaultpresets.xml

JOSM presets definition does not help. I need exactly name and value pairs and relations among them. My goal is acrually to try to make JOSM Preset editor, but for that I need to know what tags are available and relations among them.

Sorry, all combinations are possible. See answer above.

You could look at Taginfo. It has a database of all of the tag definitions in the wiki, as well as a database of all of the tags actually in use, and statistics for those.
You can download the databases here: http://taginfo.openstreetmap.org/download
Or you can query their API: http://taginfo.openstreetmap.org/taginfo/apidoc