Line type 1 and 0 FILE filename/part name upper/lowercase specification
2014-08-29, 13:07 (This post was last modified: 2014-09-01, 14:48 by Mario Pascucci.)
2014-08-29, 13:07 (This post was last modified: 2014-09-01, 14:48 by Mario Pascucci.)
Hi (again) all, people.
I'm still working on a simple Java renderer for LDraw models, and now I'm a little confused about part/filename/subfile/"0 FILE" MPD extension/etc. for case sensitivity.
- In "File Format 1.0.2" there are no statements about case-sensitivity for file names or line type "1". Only in "Direct color" ("hex values must be uppercase") and "File Type" (case insensitive).
- In "File Format Restrictions for the Official Library" under "LDraw Files/File Name" it states "While both upper and lower case letters are permitted in filenames, filenames are case-insensitive. Currently, all official parts are issued with upper-case only names." But in "complete.zip" official library all part/subpart/primitive names are lower-case!
- Zip files are case sensitive (and so are developer libraries to access Zip files), and when extract files in a case-sensitive file system use original-case filenames. Search file names in ZIP file is case sensitive, so it is important to know how a part/subpart/primitive file is named in official library: 3070b.DAT, 3070B.dat or 3070B.DAT are different.
- Looking at "MPD Language Extension", filename case isn't specified. But in a forum message (here) it is clearly stated that "And MPD file lookup probably shouldn't be case-sensitive, because no other filename lookups in LDraw files are case-sensitive".
So, my questions:
- Can I assume that in MPD-type file all internal references to sub-file can be case insensitive?
- Can I assume that part/subpart/primitives file names in Official library are all lowercase?
- LDR-type file with external reference to sub-file needs to be case-sensitive, because now almost all filesystem are case-sensitive. So, can I consider external referenze to sub-file are case-sensitive?
Thank you for your great work on LDraw libraries!
Mario
PS: when my Java viewer is ready I'll share it with you.
I'm still working on a simple Java renderer for LDraw models, and now I'm a little confused about part/filename/subfile/"0 FILE" MPD extension/etc. for case sensitivity.
- In "File Format 1.0.2" there are no statements about case-sensitivity for file names or line type "1". Only in "Direct color" ("hex values must be uppercase") and "File Type" (case insensitive).
- In "File Format Restrictions for the Official Library" under "LDraw Files/File Name" it states "While both upper and lower case letters are permitted in filenames, filenames are case-insensitive. Currently, all official parts are issued with upper-case only names." But in "complete.zip" official library all part/subpart/primitive names are lower-case!
- Zip files are case sensitive (and so are developer libraries to access Zip files), and when extract files in a case-sensitive file system use original-case filenames. Search file names in ZIP file is case sensitive, so it is important to know how a part/subpart/primitive file is named in official library: 3070b.DAT, 3070B.dat or 3070B.DAT are different.
- Looking at "MPD Language Extension", filename case isn't specified. But in a forum message (here) it is clearly stated that "And MPD file lookup probably shouldn't be case-sensitive, because no other filename lookups in LDraw files are case-sensitive".
So, my questions:
- Can I assume that in MPD-type file all internal references to sub-file can be case insensitive?
- Can I assume that part/subpart/primitives file names in Official library are all lowercase?
- LDR-type file with external reference to sub-file needs to be case-sensitive, because now almost all filesystem are case-sensitive. So, can I consider external referenze to sub-file are case-sensitive?
Thank you for your great work on LDraw libraries!
Mario
PS: when my Java viewer is ready I'll share it with you.