Ugarit Archive Metadata Schema
Any symbol can be used as an archive metadata property name, but here are some suggested ones, defined for the sake of interoperability.
Where possible, we have used the
Core vocabulary, as it's a good fit for the kinds of things archive
mode is designed for. Properties imported from Dublin Core are
identified with a
Some of these properties are automatically applied by the import process. However, if these properties are specified in the import manifest file, then the specified value from the manifest overrides the default.
These are properties applied to an import object, rather than to an individual object in an archive.
These properties are all provided by the system itself, and must not be specified in an import manifest.
- The hash of a previous import. If there is no instance of this property, then this is the first import in a sequence. If there are more than one instances, then this is a merge.
- The hash of the imported archive manifest. This is probably not of much interest beyond the Ugarit internals.
- The UNIX timestamp of the import.
- The hash of the import log file.
- An alist of import statistics.
- The path to the manifest filename that was used for the import.
- The hostname on which the import was performed.
Core object properties
These object properties apply usefully to almost anything in an archive.
- The path the file was imported from, as taken from the import manifest file. (DEFAULT: The path from the manifest file)
- The name of the file, including the extension (if applicable), but
not any directory path. This is usually the name the file had when it
was imported (eg, the latter part of
import-path), but if it was imported from some temporary file name while the system knows of a "proper" filename other than that, they may differ. (DEFAULT: The import path, minus any directory path)
- The MIME type of the file. (DEFAULT: A MIME type guessed from the
- The size of the file. If it's a directory, then this is the sum of the sizes of the files within it, not including any directory metadata.
- The mtime of the file when it was imported, as a UNIX timestamp.
- The ctime of the file when it was imported, as a UNIX timestamp.
- The title of the object. This should be a proper human-readable title, not just a filename, where possible.
- A longer description of the object.
Object properties for music
Music files should put the song title in
- The creator of the piece, generally the artist name.
- Some other contributor to the piece, other than the artist.
- The name of the publisher.
- The creation date, in
- The name of the genre.
- The title of the album.
- Track number within the album.
- Track count within the album.
- For multi-disk albums, the disk number.
- For multi-disk albums, the number of disks.
Object properties for photographs
dc:descriptionfor a description of the photo.
- The name of the photographer.
- Something in the photograph (names of photographed people or things, or more general keywords)
- The name of the place the photo was taken, or coordinates as a geo: URL.
- The name of the event the photograph was from.
- The creation timestamp of the photo, in YYYY-MM-DD format,
optionally with a 24-hour UTC HH:MM:SS time.
Object properties for PDF/PS/ebooks
dc:titlefor the title of the work.
- The name of the author.
- A subject or keyword.
- The creation date in YYYY-MM-DD format.
- The name of the publisher.
- An ISBN, ISSN, or similar identifier, in
URN format (eg:
- The original URL the thing was downloaded from.
Other useful Dublin Core properties
- An alternative title.
- Size, duration, etc. Not the size of the file in bytes, but the duration of a recording, the size of an image in pixels, etc.
- The language of the object.
- A description of the license the file is under.
- A space-separted list of names of groups that should be allowed to
access the object, under some means of publishing all or part of an
publicshould refer to unrestricted access.
The above are the conventions I have started to settle towards with the kinds of things I am using Ugarit archives for. If you use it for something else, please drop me a line and I'll be glad to help you choose a good schema, and publish the results here for others to share!