Skip to main content
Version: v5.0

scenegraph.json file

The scenegraph.json file in the SGPK package has following schema with reference to Table 1.

{    "SourceFileName": string,    "Creator": string,    "Units": string,    "Properties": [{        "Id": "Integer",        "Name": "string",        "DisplayName": "string",        "psName": "string",        "psDisplayName": "string",        "DataType": {"enum" : ["STRING", "BOOLEAN","INTEGER","LONG", "DOUBLE","FLOAT","DATE"]},        "Uom" : "string"    }]    "RootItem":    {        "Id" : "integer",        "ClassName": "string",        "ClassDispalyName": "string",        "DisplayName": "string",        "HasGeometry": "boolean",        "Properties": [{            "Id": "integer",            "Name": "string",            "Value": "source-type-of-property"        }],        "Items": ["array-of-ModelItem"]        ],    }}

Table 1: scenegraph.json file data structure

KeyDescription
Model (top object of scenegraph.json):
"SourceFileName"Original source file name that this model was first converted from. Null if unknown.
"Creator"Name of creating file loader or design application. Null if unknown.
"Units"Units in which dimensions of this model are defined
"Properties"Normalized property definitions, generated by the plug-in. (Navisworks API does not provide property definition data. Here, we utilize normalized property definition based on property-category and property names and its value's data type. Otherwise the scenegraph.json file would be too large.)
ModelItem:
"id"ID of the ModelItem in Scene Graph. This is generated by the plug-in and will be unique in the Navisworks model.
"ClassName"Name for type of item. Derived from types in original design application.
"ClassDisplayName"Display name for type of item. Derived from types in original design application.
"DisplayName"End user supplied name for item. May be null.
"HasGeometry"Flag to indicate if this ModelItem has geometry data. If yes, ModelItem Id will be used in the geometry file to link the geometry data with ModelItem in Scene Graph.
"Properties"Properties of this item
"Items"Child items under this ModelItem
PropertyDefinition:
"id"ID of the Property Definition
"Name"Name of Property (suitable for programmatic use)
"DisplayName"Display name of Property (localized)
"psName"Name of Property-Group (suitable for programmatic use)
"psDisplayName"Display Name of Property-Group (localized)
"DataType"Property value's data type. Can be String, Integer, Double, Boolean, or Date.
"Uom"Unit of measure, only applicable when DataType is double or float.
Property:
"id"Reference to ID of Property Definition (suitable for programmatic use
"Name"Display name of Property (more human readable)
"Value"Value of the property