LDraw.org Discussion Forums

Full Version: New OMR File Spec
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
Here's the first draft. Discuss!!
----
The Offical Model Repository Specification
Version: 0.1 (will turn 1.0.0 upon ratification by the LSC)
Author: Orion Pobursky

Purpose:
--------
The Official Model Repository (OMR) is a database of file in the LDraw File Format describing models that are released as sets by Lego®. For consistency between models and ease of indexing by software, a standard for the file headers, names, and hierarchy in the OMR is needed. This document will outline the extra requirements (in addition to those set forth in the current LDraw File Format specification) for a model to be included in the OMR

Base Requirements:
------------------
All files in the model will conform to the current LDraw File Format

Base File Naming:
-----------------
Each model in the OMR will consist of several files that are packaged together into a single MPD file. For sets that include instructions for multiple models, each model will have its own MPD file. Each MPD for the set will be named in the following manner:

<Set Number>(<Optional Specifier>)-[main or alt<Number>]

Where:
<Set Number>: the number assigned on the container of the set
<Optional Specifier>: Sometimes different set with the same number are released, the specifier will be a single digit number, in parentheses, that is different between different sets, to distinguish these sets from one another.
[main or alt<Number>]: The main model of the instructions (i.e. the model featured on the cover of the container) will have the word "main". For sets that feature more than one model on the front of the container (e.g. the Creator line), the largest or most prominent model is the main model. For alternate models that are detailed in instructions, the word "alt" and a single digit number starting at 1 will be used. For playsets or other sets where there are multiple models that are part of an integral whole, all of the submodels will be contained in the main model MPD.

Example:
Set 4896 - Roaring Roadsters. This creator set has 3 models in the instructions. The roadster is featured prominently on the box. 4896 is the only set with that number. Therefore:
Roadster MPD: 4896-main.mpd
Dragster MPD: 4896-alt1.mpd
etc...

MPD File Structure:
-------------------
The MPD will conform to the MPD File Specification.

The individual files inside the MPD shall be named using the following convention:
<MPD Filename>-1.ldr - First model in main instructions
<MPD Filename>-1a.ldr - First submodel of first model
<MPD Filename>-1aa.ldr - First component of first submodel of first model
<MPD Filename>-1ab.ldr - Second component of first submodel of first model
<MPD Filename>-2.ldr - Second model of main instructions
<MPD Filename>-mf-<Number>.ldr - Minifig, numbered in order of its appearance in the instructions.

To use further levels of submodels, continue adding on letters to the appropriate depth.

The only unofficial parts allowed to be referenced in the model files are those currently residing on the LDraw.org Parts Tracker. No part files shall be contained in the MPD.

File Headers:
-------------
Each individual model file in the MPD must have a standard header format.

Standard Header:
0 FILE <Filename>.ldr
0 <Lego Set Number> <Lego Set Name>
0 Name: <Filename>.ldr
0 Author: <Author Name>
0 LDraw.org Official Model Repository
I know most of Europe's on holiday right now. I'll give this a week and then I'll formally submit it to the LSC. Scratch that, I think I'll just make this post sticky and let it brew a while.
Orion Pobursky Wrote:
-------------------------------------------------------
> Here's the first draft. Discuss!!
> -mf-.ldr - Minifig, numbered in order of its
> appearance in the instructions.
>

This will cause naming conflicts. If you have a model containing two (or more) MPD's from the OMR and they have minifigs, there will be at the very least two files named mf1.ldr. And so on...

/Tore
Just a tiny little detail for an OMR novice: Where is that OMR? I can only find its header specs at http://www.ldraw.org/Article48.html and a broken link to ldraw.org / repository / official /
.

/Tore
Should the model files contain "0 STEP" meta-statements corresponding to the steps in the building instructions from TLG?

If not, would it be a violation against the standard to add them anyway?
It doesn't exist (and never has) in any official capacity. This file spec in intended to remedy that. Mike Heidemann probably has the largest unofficial repository.
I'm inclined to say yes 0 STEP commands should be included. Not sure how reviewable it would be since some instructions are pretty obscure.
I'm not sure how. The spec says they're named <MPD Filename>-mf-<Number>.ldr. The MPD filename should be unique in the OMR so the minifig name would be unique as well.
Orion Pobursky Wrote:
-------------------------------------------------------
> I'm not sure how. The spec says they're named
> -mf-.ldr. The MPD filename should be unique in the
> OMR so the minifig name would be unique as well.

Oh sorry, now I can see that. It wasn't totally clear at Article48:
> 0 7140 X-Wing Fighter, Luke Skywalker Mini-figure
> 0 Name: mf-1.ldr (see below [1])

/Tore

(Edit: Also, some very crucial information drops away here in ldraw.org forum when quoted...)
Orion Pobursky Wrote:
-------------------------------------------------------
> I'm inclined to say yes 0 STEP commands should be
> included. Not sure how reviewable it would be
> since some instructions are pretty obscure.

Ok, then let's leave to the LSC to decide whether 0 STEP be mandotory, recommended, not recommended, or prohibited. Smile

/Tore
Pages: 1 2