Thanks, Jason, for the patient and careful explanation. -- Joshua
On 12/10/06 3:44 PM, "Jason Cutler" <[EMAIL PROTECTED]> wrote: > Just so people faithfully following this post learn a little something, I > thought I¹d defend Markzware¹s seemingly ³bizarre² naming convention. In OS X, > not everything has to have a Three Letter Extension to identify what it is > like in DOS. For example, have a look at a font file. It has no extension but > the system still knows what kind of file it is. How? OS X uses Uniform Type > Identifiers (UTIs). These filenames which are made up of words separated by > ³.² characters are based on Java Package names, which are ³fully qualified² > like the more common internet URLs. > > For those interested, here¹s an example of what I meant by ³namespace². > > How Preferences Are Stored > To ensure that there are no naming conflicts, Apple strongly recommends that > bundle identifiers take the same form as Java package namesyour company¹s > unique domain name followed by the application or library name. For example, > the Finder uses the identifier com.apple.finder and Sherlock uses > com.apple.Sherlock. This scheme minimizes the possibility of name collision > and leaves you the freedom to manage the identifier name space under your > corporate domain. [my emphasis] > > http://developer.apple.com/documentation/MacOSX/Conceptual/BPRuntimeConfig/Art > icles/UserPreferences.html > > Also see this reference: > > The UTI Syntax > Uniform type identifiers use the reverse-DNS format initially used to describe > elements of the Java class hierarchy and now also used in Mac OS X for bundle > identification. Some examples: > > com.apple.quicktime-movie > com.mycompany.myapp.myspecialfiletype > > http://developer.apple.com/documentation/Carbon/Conceptual/understanding_utis/ > index.html#//apple_ref/doc/uid/TP40001319 > > 6.8.1 Package Names > Names of packages that are to be made widely available should be formed as > described in §7.7. Such names are always qualified names whose first > identifier consists of two or three lowercase letters that name an Internet > domain, such as com, edu, gov, mil, net, org, or a two-letter ISO country code > such as uk or jp. Here are examples of hypothetical unique names that might be > formed under this convention: > > com.JavaSoft.jag.Oak > org.npr.pledge.driver > uk.ac.city.rugby.game > > http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html > > So really a developer can end their filenames with anything they need. > > It was 8/12/06 5:14 PM, when "Paul Berkowitz" typed: > >> > On 12/7/06 8:58 PM, "Jason Cutler" <[EMAIL PROTECTED]> wrote: >> > >>> >> It's not really an extension per se, >> > >> > Yes it is. >> > >>> >> but if you look at preference files >>> >> they are named in a fashion that is similar to the markzware one: >>> >> >>> >> com.microsoft.autoupdate.plist >>> >> com.microsoft.Entourage.plist >>> >> com.microsoft.entourage.syncservices.plist >>> >> com.microsoft.error_reporting.plist >> > >> > .plist is a proper, and very common extension. It signifies that the file >> is >> > a Property List, like .doc signifies a Word Document, and .xls and Excel >> > Workbook file, and FontDBWtSys, evidently, a FlightCheck document of some >> > sort. It's bizarre because it's unnecessarily long. They were trying to >> > stuff the kitchen sink, or some verbose overkill of subtypes, into the >> > extension name. >>> >> >>> >> These are Property Lists. Kind ="XML Property List File" >> > >> > That's right. Property List is a type. (Yes, it's a sub-type of text file, a >> > special type of text file that conforms to a rigid definition. Like .htm is >> > an HTML file, also a subtype of text file.) >> > >>> >> >>> >> com.markzware.FC5.FontDBWtSys >>> >> >>> >> Is a binary. The last bit isn't really an extension like .app is. It's >>> part >>> >> of the namespace. >> > >> > Everything in it is "part of the namespace" (a meaningless locution here). >> > But the last bit of its "namespace" (or, rather, "name"), after the last >> > dot, is its extension. A bizarre extension, as it happens.
