The problem is that Filipino should be considered distinct from Pilipino and Tagalog:
- Tagalog is the historic language, which was written historically with its own script before the Spanish era, and that has been romanized to the Latin script since long. It survives today as a minority language in a minority area, and excludes any use of european phonetics and vocabulary. This is what should correspond to the "tl" (and "tlg") ISO639-1 (and -2/B or -2/T) standard codes.
- Pilipino is the modern transformation of Tagalog during the Spanish invasion, up to the period of American administration which intriduced lots of English terms. It corresponds to the Tagalog language but with minor phonetic transformations coming from the Latin-based litteracy when reading texts, but it still does not incorporate the whole vocabulary and phonetics of Spanish and English. It has always been written in the Latin script only, using the 26 base letters (minus the F letter) plus Spanish digraphs ch, rr, ll, �, and ng from English, considered as single letters. Its phonetic mostly ressembles to the Tagalog language, so the few imported words from English and Spanish are often transformed a lot to adapt to the Tagalog phonology, and the orthography is simplified using the same rules as those used to write Tagalog words.
Pilipino is then a natural evolution of Tagalog and should be considered the same language, keeping its purity at the price of being well understood only by a minority, but not by native Europeans or by other important native speakers of other dialects, notably Cebuano. Since 1998 (I am not sure of this date), Pilipino is no longer the official language, so the ISO639 codes "tl" and "tlg" attached to it should no more be used, except when refering to this regional dialect.
- Filipino is the successor of Pilipino, and is given the 3-letters code "fil" in ISO-639-2. This is a mix of Pilipino, English, Spanish, Cebuano, and other regional dialects from other important minorities of the region like Malay and Chinese. It has many difference with Pilipino, but unfortunately, ISO-639-2 has mixed the two languages in the same code. (My opinion is that the "Pilipino" defined in ISO-639-2 is incorrect, and it should be listed under the "tl" and "tlg" code row as an alias of Tagalog).
For today applications, we need to make the distinction between modern Tagalog or Pilipino (code "tl" or "tlg") and Filipino (code "fil"). I have seen several applications that want a two-letter codes reuse the "tl" code incorrectly for Filipino:
- using the country code or variant code in a locale code to create a locale identifier for Filipino: "tl-PH",
- and a region or variant subcode to designate the "pure" Tagalog language: "tl-PH-tlg"
Other applications are trying to use the 2-letter codes of the Philippins for its official Filipino language "ph", because "ph" is still unassigned (reserved) in ISO-639.
The problem is that this is informal, and non standard. If ISO639 is amended, it would be good to add the 639-1 2-letter code "ph" for "Filipino" (already coded "fil" in ISO-639-2/B or -2T), and to change the mapping of "Pilipino" as an alias of Tagalog (rather than an alias of Filipino.)
Now comes the problem of tagging localized resources for the Philipines: can we use "ph" today? or must we use only "fil" or "fil-PH"?

