Search code examples
macososx-mountain-lionspotlight

Where has the command "mdcheckschema" been moved to in 10.8.2?


I'm working on a custom document mdimporter and trying to validate my schema.xml file. In the apple documentation they say to use "usr/bin/mdcheckschema" followed by the path to the file. It should return whether or not it was parsed successfully, but I just get "No such file or directory." To be clear if I just type the command, I receive the same thing, rather than terminal returning the manual for the command. I've tried "locate" and "whereis" and have only been able to find a single reference to it at "usr/share/man/man1/mdcheckschema.1" Has the command been moved or removed all together? The apple docs still suggest it should be in "usr/bin." I haven't had much luck finding this issue mentioned anywhere else.

This could probably be its own question, but in 10.8.2 "mdimport -L" doesn't return a list of all of the installed importers. Is this the case for anyone else?

Thanks, Corey


Solution

  • Good question! The executable seems to be missing in OS X 10.8.x although the man page for it is still there. Of three 10.8 systems I've looked at, an older executable exists on one in /usr/bin but it is not known to be part of any installation package by pkgutil so I'm guessing it was left over from an upgrade from an earlier OS X. A 10.7.5 system also does not have the executable but has the man page. A 10.6.8 system does have it installed:

    $ pkgutil --file-info /usr/bin/mdcheckschema
    volume: /
    path: /usr/bin/mdcheckschema
    
    pkgid: com.apple.pkg.DeveloperToolsCLILeo
    pkg-version: 1.0.0.9000000000.1.1248867338
    install-time: 1328064907
    uid: 0
    gid: 0
    mode: 755
    

    So it appears that it was at one time packaged as part of the Xcode Command Line Tools component ("Leo" would indicate OS X 10.5 Leopard). I guess you'll have to ask Apple what has happened to it. It could be just an oversight.