Manifest file
The manifest.json file describes the files in the BIMPK package with the following schema with reference to Table 1.
{ "version" : "string", "root" : "integer", "files" : [ { "id" : "integer", "name" : "string", "author" : "string", "company" : "string", "modifiedOn" : "timestamp", "source" : "string", "editable": "bool", "references" : [ { "id" : "integer", "count" : "integer" } ] } ], "occurrences" : [ { "id" : "integer", "source" : "integer", "data" : { "objects" : "string", "graphics" : "string", "graphics2d" : "string", "thumbnail" : "string" } } ], "pluginVersion" : "string"}Table 1: manifest.json file data structure
| Key | Description |
|---|---|
"version" | The bimpk version |
"root" | Declares which file is the model's main file, which is processed first. |
"files" | An array of metadata objects that represent the CAD application files for the exported model. |
"files[n].id" | A unique id for the file |
"files[n].name" | The CAD application file's name |
"files[n].author" | The file's author |
"files[n].company" | The company name |
"files[n].modifiedOn" | The date the file was last edited |
"files[n].source" | The source CAD application's information |
"files[n].editable" | Boolean value that declares if platform applications can edit property data in the file. If sync-back function is implemented, you can use the plug-in to sync edited data back to the source CAD model. |
"files[n].references" | Pass an object with id and count properties for each file that this file references. |
"files[n].references.id" | The file's id |
"files[n].references.count" | The referenced file's instance number |
"occurrences" | Lists the Bimpk file's occurrence folders, which store the model files. The first folder stores the main model files; any following occurrence folders store linked model files if they exist. |
"occurrences[n].id" | A unique id for the occurrence. |
"occurrences[n].source" | Source file id, one occurrence is an instance of file from files secton |
"occurrences[n].data" | The occurrence folder's name. |
"occurrences[n].data.objects" | The relative path to the objects.json file |
"occurrences[n].data.graphics" | The relative path to the graphics.scz file |
"occurrences[n].data.graphics2d" | The relative path to the graphics2d.scz file |
"occurrences[n].data.thumbnail" | The relative path to the thumbnail.png file |
"pluginVersion" | The IPA plug-in's version |
Example#
For more information, see the following complete example of manifest.json file:
{ "version": "2.1", "files": [ { "id": 1, "name": "1901RK-INV-01-ZZ-M3-Z-0001_Federated.rvt", "author": "", "company": "", "modifiedOn": "2023-06-14 17:06::12", "source": "Autodesk Revit 2022", "editable": true, "references": [ { "id": 2, "count": 1 }, { "id": 3, "count": 1 }, { "id": 4, "count": 1 }, { "id": 5, "count": 1 }, { "id": 6, "count": 1 } ] }, { "id": 2, "name": "1901RK-INV-01-ZZ-M3-A-0001.rvt", "author": "", "company": "", "modifiedOn": "2023-04-13 11:41::07", "source": "Autodesk Revit 2022", "editable": false }, { "id": 3, "name": "1901RK-INV-01-ZZ-M3-S-0001.rvt", "author": "", "company": "", "modifiedOn": "2023-04-13 11:44::24", "source": "Autodesk Revit 2022", "editable": false }, { "id": 4, "name": "1901RK-INV-01-ZZ-M3-P-0001.rvt", "author": "", "company": "yourCompanyName", "modifiedOn": "2023-04-13 11:46::45", "source": "Autodesk Revit 2022", "editable": false }, { "id": 5, "name": "1901RK-INV-01-ZZ-M3-E-0001.rvt", "author": "", "company": "yourCompanyName", "modifiedOn": "2023-04-13 11:43::06", "source": "Autodesk Revit 2022", "editable": false }, { "id": 6, "name": "1901RK-INV-01-ZZ-M3-F-0001.rvt", "author": "", "company": "", "modifiedOn": "2023-04-13 11:45::40", "source": "Autodesk Revit 2022", "editable": false } ], "occurrences": [ { "id": 1, "source": 1, "data": { "objects": "occ/1/objects.json", "graphics2d": "occ/1/graphics2d.scz", "graphics": "occ/1/graphics.scz", "thumbnail": "occ/1/thumbnail.png" } }, { "id": 2, "source": 2, "data": { "objects": "occ/2/objects.json" } }, { "id": 3, "source": 3, "data": { "objects": "occ/3/objects.json" } }, { "id": 4, "source": 4, "data": { "objects": "occ/4/objects.json" } }, { "id": 5, "source": 5, "data": { "objects": "occ/5/objects.json" } }, { "id": 6, "source": 6, "data": { "objects": "occ/6/objects.json" } } ], "root": 1, "pluginVersion": "IPA Revit Plugin ver4.1.0"}