I'm pretty comfortable laying out some ideas for static objects as well as US based rolling stock but have no idea how much of that would make sense in other countries. So this thread is intended primarily to collect information. All examples should be understood as intended to explain rather than specify how things should be coded in any files. I've also prefaced each tag with "Tag" to imply there is something there that can be used to locate tags... leaving the actual solution to the programmers
The first set of information that comes to mind is to identify who created the mesh and textures. Right now that's in the readme files but readme files can get lost.
So for ownership / IP data, the basics could be:
OpenRailsTags ( IPTags ( MeshTags ( Mesh ( TagMeshFile ( .s file name ) TagMeshFileOwner( <persons full name ) TagMeshLicense (Payware ! Freeware | Open Source ) ) repeat as needed ) TextureTags ( Texture ( TagTextureFile ( .s file name ) TagTextureFileOwner( <persons full name ) TagTagTextureLicense (Payware | Freeware | Open Source ) ) repeat as needed ) ) )
That allows for multiple mesh files going into one model as well as multiple textures.
Because many items are distributed as sets of models we could use include files to reduce the amount of redundant text. This example shows how many models could use an identical set of tags:
OpenRailsTags ( Include ( <path><include file name.inc> ) )
where the include file would look like this:
Comment ( include file for IP Tags ) IPTags ( MeshTags ( Mesh ( TagMeshFile ( .s file name ) TagMeshFileOwner( <persons full name ) TagMeshLicense (Payware ! Freeware | Open Source ) ) repeat as needed ) TextureTags ( Texture ( TagTextureFile ( .s file name ) TagTextureFileOwner( <persons full name ) TagTextureLicense (Payware | Freeware | Open Source ) ) repeat as needed ) )
Because the include files are very flexible other groupings are possible.. an include file for all of the meshes and others for one or more texture files.
As for the tags themselves, it might make sense to add another for TagLicenseText(). I don't think there is a need for Copyright() because the ...TagFileOwner() and ...TagLicense() tags already address that.
Again, the whole idea here is to create a more firm link between content and who created it than is possible with a readme file as well as an aid to searching for stuff. Feedback?