Re: UTI strings
Re: UTI strings
- Subject: Re: UTI strings
- From: julius <email@hidden>
- Date: Mon, 31 May 2010 09:25:29 +0100
On 31 May 2010, at 01:42, John Joyce wrote:
>
> On May 30, 2010, at 5:15 PM, julius wrote:
>
>> John hi
>> On 30 May 2010, at 19:47, John Joyce wrote:
>>
>>> That's not how these constants work.
>>> These are intended to be constants that return the correct type for the current build of the system.
>>> This protects your software from a change in the actual UTI of a common type.
>>>
>>
>> I can understand the use of constants to such a purpose.
>> Hence for instance my ability to write a file as NSRTFTextDocumentType when in the Save panel I have opted to save it as com.apple.rtfd or as a document having no UTI at all.
>>
>> If I read a document for which I have declared no UTI then the ofType parameter in the readFromData:ofType:error: displays the Name I have used to describe that document type. On the other hand if I have used a UTI then it is the UTI that is passed as the ofType parameter.
>>
>> So if I have this correctly, in the case of files that will only ever be read by my application it really does not matter what extension or UTI I give them since it is the responsibility of my code to make sense of them. However, if I want to write files that other applications can read I have not only to provide the correct format but also the correct extension or UTI . Is it therefore the case that when writing files to be read by other applications I need not only write using the correct NSDocumentTypeDocumentAttribute but also provide the correct UTI (or extension)? If so then surely I need to have an idea of which UTI's (if any) go with a given NSDocumentTypeDocumentAttribute?
>>
>> Thanks
>> Julius
>>
>>
>> http://juliuspaintings.co.uk
>>
> Your application declares the types of files it can read and/or edit.
> It declares these types by UTI.
That is what I thought.
>
> If an application declares that it can read files of type x, then you can definitely open files of type x with that application.
>
> Not all UTIs are built in the OS.
> They're "registered" with the OS.
> The OS does not know about many (most?) file types out of the box.
That too is my understanding
>
> The OS can attempt to identify a file's type.
> It doesn't always know 100% what app should or could open a file or edit it.
> It will then give you a choice of "Recommended applications", that is, apps that are declared to read or edit a file of the UTI that the OS thinks this file might be. The OS does allow the user to choose from "All Applications" also, because the OS cannot realistically know about all file types ahead of time.
Which is why (I think I correctly assume) one's program has to make decisions regarding how to handle incoming or outgoing file data on the basis of the ofType: parameter.
>
> This data is covered, but you may want to explore further the docs, a few books on cocoa, and sample apps from apple.
> Look at how they handle this.
> Ideally, look at open source or sample apps that handle similar file types to yours.
Yes. But I have!!!
And am still none the wiser as to which type goes with which NSDocumentTypeDocumentAttribute.
For instance I have been been studying TextEdit for a while now and seeing how it maps the files it reads and writes to the UTI's and other indications of type but it does not tell me where I can find the indicators for the mappings it does not use or the range of what is actually encompassed by the mappings that it does use.
I merely wondered where to get information on the mapping between NSDocumentTypeDocumentAttribute(s) and the UTI's or other indicators of type.
I guess the reason I'm having difficulties is that there ain't no such documentation?
There's only 9 of these mappings of which I think I know a couple of the corresponding types but the rest are a mystery.
Could you or someone else to just fill in the remaining 7 blanks for me?
Also, since when I look at how spotlight types various files I can see that a file may be described by more than one UTI,
Similarly the UTI reference talks of base types which implies the existence of a hierarchy (or is it a looser organisation?). Where is this actual, not theoretical, hierarchy documented?
NSPlainTextDocumentType - ?
NSRTFTextDocumentType - public.rtf - is this right? It looks right but I have no means other than experiential of finding out
NSRTFDTextDocumentType - com.apple.rtfd - ditto here.
NSMacSimpleTextDocumentType - ?
NSHTMLTextDocumentType - ?
NSDocFormatTextDocumentType - ?
NSWordMLTextDocumentType - ?
NSOfficeOpenXMLTextDocumentType - ?
NSOpenDocumentTextDocumentType; - ?
------------------------------------------------------
http://juliuspaintings.co.uk
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden