Introduction to Model Properties
Model Properties Service
The model properties service allows callers to build and query indexes built from the BIM properties in models uploaded to Autodesk and BIM 360 Docs. These are the properties that can be displayed in the Viewer. Model indexes are built using the PDB (Property Database) files extracted as part of the SVF translation process. SVF2 viewable IDs are then added to these indexes from the SVF2 files generated from SVF. For a property field to be available for indexing, it must be supported in the SVF2 translation process. For backwards compatibility with existing Viewer applications, the index rows generated by the service contain both the SVF object IDs (lmvId) along with the newer SVF2 object IDs (svf2Id).
In addition to property data, the indexes built by the service contain the identities and bounding box coordinates for objects that are viewable via the Viewer, allowing callers to view the results of index queries. The API also allows users to trigger the service to calculate changes (diffs) that have occurred between consecutive versions of a model. To calculate a diff, callers specify a previous and current file version, and the service compares these versions, computing changes to their property values and bounding-box geometry.
Diff index file type support
Unlike basic property indexing, which only depends on SVF translation, diff indexing depends on element ID stability. In order for the model properties service to compare instances of the same design object in two consecutive versions of a file, the IDs of these elements must be the same. If the ID of a specific design element changes between consecutive versions of the file, the ID is said to be unstable and can’t be used in diff comparisons by the model properties service.
The file types supported by the index service for diff comparisons currently include 3D RVT and DWG files, NWC files exported from Revit and AutoCAD verticals, IFC files exported from AutoCAD architecture, MEP, Civil 3D 2018 and onwards, ARCHICAD, Revit, MagiCAD for Revit, and Tekla Structures.
Docs Permissions
To build and query indexes with this service, the caller MUST have at least View+Download permission to the folder in Docs where the file is stored. View+Download is a minimum requirement. Users with Create or Full Control will automatically have the necessary permissions to build and query indexes, as Docs folder permissions are cumulative.
Please note that Docs folder permission changes can take a few minutes to propagate. If you are having access problems immediately after assigning new user permissions to a folder using the Docs UI, retry your indexing/query operation again after giving the permissions a few minutes to propagate. If you are still having folder access problems, please contact support.

Model Index Workflow
To build indexes, callers specify one or more file version URNs. The service works in batch, which allows multiple files to be indexed simultaneously. Taking these input URNs, the service computes an index dynamically, waiting for SVF2 translation to complete if files have not yet been converted following upload to Docs. Once constructed, the index once is comprised of three JSON resource URLs that encode the index. Running queries against an index creates further JSON resources that contain the results of the queries. All of the JSON resource files returned by the services are compressed (*.json.gzip
). The table below describes the four different types of resources returned by the service.
URL | Type | Description |
---|---|---|
manifestUrl | JSON | The manifest for an index or query, detailing the seed files and SVF2 PDB resources used to generate the index rows. |
fieldsUrl | NDJSON | The set of unique fields (property types) extracted for an index or query. One field per line. |
propertiesUrl | NDJSON | The raw object property values for the index. One object per line. |
resultsUrl | NDJSON | The object property results from a query executed against the index at build time, or after an index has been constructed. |
Batch Status vs. Query
The model properties API supports two different querying mechanisms. Each mechanism serves a different purpose, but before exploring the differences it is important to understand that the model properties service is lazy. Every file uploaded to Docs is not automatically indexed. Instead callers must request that file versions be indexed by the service. Therefore, at any given moment a file may or may not be present in the model property service’s index cache.
To create indexes, users call the index or diff batch-status
endpoint, depending on the type of index required (single file or file version diff). Both endpoints take one or more files to index. The batch-status
endpoint treats each file passed individually, creating an index per file. This workflow is summarized in the diagram below.

When posting to a batch-status
endpoint to create an index it is also possible to simultaneously pass a query filter. If the index does not yet exist, the service will create the index and then execute the query. If the file or files have been previously indexed, the service will just execute the query. If the query has been previously executed and the results cached, the service will immediately return the resultsUrl
to the to the caller. This short-cut allows callers to get results from an index that may or not exist in a single call. Once an index has been created it is also possible to query it directly by ID. The same index can be used to support an infinite array of queries. Once the client has access to an indexId
(or diffId
) from a call to a batch-status
endpoint, these IDs can be used to directly access and query the indexes hosted by the service.
The workflow for building and querying diff indexes is almost identical to the workflow for standard indexes. The only significant differences between these two workflows is that the input file configuration necessary to specify the index. In diff indexes, you must always pass a pair of files that will be compared for changes.
For detailed instructions on how to build, query, and interpret basic and diff indexes, refer to the more detailed Querying Model Indexes and Tracking Changes in Model Versions tutorials.
Index Resources
This section details the JSON file formats of the four different resources generated by the service (manifest, fields, properties, and results).
Manifest
The following is a sample manifest generated by a request to the Model Properties service to index three Docs seed files, urn:adsk.wipprod:fs.file:vf.DyTWutcvTcOLUNUARxcTzQ?version=4
, urn:adsk.wipprod:fs.file:vf.LaqNypGeQTaKs0DA__nzLA?version=4
and urn:adsk.wipprod:fs.file:vf.uyT8qe04TDSTDXC2sdfBtg?version=8
.
{
"schema": "2.0.0",
"projectId": "f83cef12-deef-4771-9feb-4f85643e3c46",
"status": "Succeeded",
"createdAt": "2021-07-23T08:56:07.0868303+00:00",
"seedFiles": [
{
"lineageId": "a19f7db",
"lineageUrn": "urn:adsk.wipprod:dm.lineage:DyTWutcvTcOLUNUARxcTzQ",
"versionUrn": "urn:adsk.wipprod:fs.file:vf.DyTWutcvTcOLUNUARxcTzQ?version=4",
"databases": [
{
"id": "3747dccf",
"offsets": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkR5VFd1dGN2VGNPTFVOVUFSeGNUelE_dmVyc2lvbj00/output/Resource/objects_offs.json.gz",
"attributes": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkR5VFd1dGN2VGNPTFVOVUFSeGNUelE_dmVyc2lvbj00/output/Resource/objects_attrs.json.gz",
"values": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkR5VFd1dGN2VGNPTFVOVUFSeGNUelE_dmVyc2lvbj00/output/Resource/objects_vals.json.gz",
"mapping": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkR5VFd1dGN2VGNPTFVOVUFSeGNUelE_dmVyc2lvbj00/output/Resource/objects_avs.json.gz",
"ids": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkR5VFd1dGN2VGNPTFVOVUFSeGNUelE_dmVyc2lvbj00/output/Resource/objects_ids.json.gz"
}
],
"views": [
{
"id": "e7fda9d5",
"urn": "urn:adsk.wipprod:fs.file:vf.DyTWutcvTcOLUNUARxcTzQ?version=4",
"is3d": true,
"viewableName": "{3D}",
"viewableId": "0935d8b2-149b-4a0d-b816-863f0d595a20-000bcd64",
"viewableGuid": "00cd2da3-fbfa-44a9-7a33-cad0bc4720cb"
},
{
"id": "12fcb372",
"urn": "urn:adsk.wipprod:fs.file:vf.DyTWutcvTcOLUNUARxcTzQ?version=4",
"is3d": true,
"viewableName": "New Construction",
"viewableId": "c884ae1b-61e7-4f9d-0001-719e20b22d0b-00120bb2",
"viewableGuid": "4a966c2a-ead6-65c3-4f98-273dd7543047"
}
]
},
{
"lineageId": "b24c41",
"lineageUrn": "urn:adsk.wipprod:dm.lineage:LaqNypGeQTaKs0DA__nzLA",
"versionUrn": "urn:adsk.wipprod:fs.file:vf.LaqNypGeQTaKs0DA__nzLA?version=4",
"databases": [
{
"id": "3d24adf4",
"offsets": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkxhcU55cEdlUVRhS3MwREFfX256TEE_dmVyc2lvbj00/output/Resource/objects_offs.json.gz",
"attributes": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkxhcU55cEdlUVRhS3MwREFfX256TEE_dmVyc2lvbj00/output/Resource/objects_attrs.json.gz",
"values": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkxhcU55cEdlUVRhS3MwREFfX256TEE_dmVyc2lvbj00/output/Resource/objects_vals.json.gz",
"mapping": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkxhcU55cEdlUVRhS3MwREFfX256TEE_dmVyc2lvbj00/output/Resource/objects_avs.json.gz",
"ids": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLkxhcU55cEdlUVRhS3MwREFfX256TEE_dmVyc2lvbj00/output/Resource/objects_ids.json.gz"
}
],
"views": [
{
"id": "cf7900d3",
"urn": "urn:adsk.wipprod:fs.file:vf.LaqNypGeQTaKs0DA__nzLA?version=4",
"is3d": true,
"viewableName": "{3D}",
"viewableId": "845097d1-c3be-4a6f-9dbe-51582fa6d465-002c2f04",
"viewableGuid": "5d41dda7-eea1-eff5-77dd-ee1aa81fc3a8"
},
{
"id": "bfe04eff",
"urn": "urn:adsk.wipprod:fs.file:vf.LaqNypGeQTaKs0DA__nzLA?version=4",
"is3d": true,
"viewableName": "New Construction",
"viewableId": "c884ae1b-61e7-4f9d-0001-719e20b22d0b-0032f400",
"viewableGuid": "10c25a10-5469-3aef-b0a6-1c27c7b8e93b"
}
]
},
{
"lineageId": "e330f714",
"lineageUrn": "urn:adsk.wipprod:dm.lineage:uyT8qe04TDSTDXC2sdfBtg",
"versionUrn": "urn:adsk.wipprod:fs.file:vf.uyT8qe04TDSTDXC2sdfBtg?version=8",
"databases": [
{
"id": "3d0bd846",
"offsets": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLnV5VDhxZTA0VERTVERYQzJzZGZCdGc_dmVyc2lvbj04/output/Resource/objects_offs.json.gz",
"attributes": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLnV5VDhxZTA0VERTVERYQzJzZGZCdGc_dmVyc2lvbj04/output/Resource/objects_attrs.json.gz",
"values": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLnV5VDhxZTA0VERTVERYQzJzZGZCdGc_dmVyc2lvbj04/output/Resource/objects_vals.json.gz",
"mapping": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLnV5VDhxZTA0VERTVERYQzJzZGZCdGc_dmVyc2lvbj04/output/Resource/objects_avs.json.gz",
"ids": "urn:adsk.viewing:fs.file:dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLnV5VDhxZTA0VERTVERYQzJzZGZCdGc_dmVyc2lvbj04/output/Resource/objects_ids.json.gz"
}
],
"views": [
{
"id": "f109b687",
"urn": "urn:adsk.wipprod:fs.file:vf.uyT8qe04TDSTDXC2sdfBtg?version=8",
"is3d": true,
"viewableName": "{3D}",
"viewableId": "24bb580c-5e74-4a65-bcae-e97c21424529-00027e16",
"viewableGuid": "a3186f12-7750-fa47-f60a-610a779ba5ac"
},
{
"id": "f24d458",
"urn": "urn:adsk.wipprod:fs.file:vf.uyT8qe04TDSTDXC2sdfBtg?version=8",
"is3d": true,
"viewableName": "New Construction",
"viewableId": "c884ae1b-61e7-4f9d-0001-719e20b22d0b-001225ae",
"viewableGuid": "b6e42cf6-432d-5c76-aa05-8909a2cc35c0"
}
]
}
],
"errors": [],
"stats": {
"objects": 33097,
"contentLength": 1881318
}
}
The manifest header contains the following properties:
Property | Type | Description |
---|---|---|
schema | string | The version descriptor for the manifest schema version |
projectId | guid | The Autodesk/BIM 360 Docs project GUID |
status | string | The status of the index associated with this manifest. Possible values are PROCESSING, SUCCESS, PENDING or FAILED. |
createdAt | datetime | The index creation date time |
seedFiles | array | The list of seed files in the index |
errors | array | An array of errors associated with this manifest if the status is FAILED |
stats | object | Summary statistics for the number of objects in the index and the content length in bytes of the raw index properties resource |
The seedFiles
array contains objects describing the file versions used to build the index. Properties in this file which are index keys are used to connect objects rows in property or index query files to the corresponding entries in the index manifest.
Property | Type | Description |
---|---|---|
lineageId | string | The ID assigned to the seed file in the index. Used as an object key to tie objects to lineages. |
lineageUrn | string | The The Autodesk/BIM 360 Docs Lineage URN |
versionUrn | string | The The Autodesk/BIM 360 Docs File Version URN for the file used to build the index |
databases | array | The list of SVF2 property database resources used to build the index |
views | array | The list of viewables extracted from the versionUrn in which objects in the index can be displayed in the Viewer |
The seedFiles.databases
array contains the PDB database resources used to build the index. Properties that are index keys are used to connect objects rows in raw property or index query results to the corresponding entries in the index manifest.
Property | Type | Description |
---|---|---|
id | string | The ID assigned to the SVF2 property database used to extract the properties associated with the index. Used as an object key to tie objects to database. |
offsets | string | The SVF2 property database offsets resource |
attributes | string | The SVF2 property database attributes resource used to build the index fields resource |
values | string | The SVF2 property database property values resource |
mapping | string | The SVF2 property database mapping resource |
ids | string | The SVF2 property database ids resource |
The seedFiles.views
array contains viewables which can be loaded into the Viewer to display the results of model property queries. Properties which are index keys are used to connect objects rows in raw property or index query results to the corresponding entries in the index manifest.
Property | Type | Description |
---|---|---|
id | string | The ID assigned to views containing objects in the index. Used as an object key to tie objects to views that can be loaded into the Viewer. |
urn | string | The The Autodesk/BIM 360 Docs File Version URN containing the view |
is3d | boolean | Flag indicating if the view is 3D |
viewableName | string | The viewable name of the view in the model derivative manifest for the Viewer |
viewableId | string | The viewableId of the view in the model derivative manifest for the Viewer |
viewableGuid | string | The viewable GUID of the view in the model derivative manifest for the Viewer |
The manifest for a diff index is almost identical to a basic index manifest. However it has a second seedfiles
root node named prev
that contains the seedFiles
for the previous file version(s) passed as part of the diff index specification.
Fields Resource

The available Viewer properties in an index are described using the fields resource. The fields resource file contains NDJSON (new-line delimited JSON) with a field per line. Each line represents a unique field (dimension) in the index. The key property of a field is required to identify the column(s) required when formulating a query to run against an index.
{"key":"p153cb174","category":"__name__","type":"String","name":"name","uom":null}
{"key":"p74a9a490","category":"__document__","type":"String","name":"schema_name","uom":null}
{"key":"p137c14f2","category":"__document__","type":"String","name":"schema_version","uom":null}
{"key":"p1490bcea","category":"__document__","type":"Boolean","name":"is_doc_property","uom":null}
{"key":"p5eddc473","category":"__category__","type":"String","name":"Category","uom":null}
{"key":"p00723fa6","category":"Identity Data","type":"String","name":"Design Option","uom":null}
{"key":"pe8094f29","category":"Other","type":"String","name":"Project Issue Date","uom":null}
{"key":"p50756a0d","category":"Other","type":"String","name":"Client Name","uom":null}
{"key":"p32791eb0","category":"Other","type":"String","name":"Project Address","uom":null}
{"key":"pbf75ced9","category":"Other","type":"String","name":"Project Name","uom":null}
{"key":"p8213f1ad","category":"Other","type":"String","name":"Project Number","uom":null}
{"key":"pa7275c45","category":"__categoryId__","type":"Integer","name":"CategoryId","uom":null}
{"key":"p93e93af5","category":"__parent__","type":"DbKey","name":"parent","uom":null}
{"key":"p1d45bc4f","category":"Dimensions","type":"Double","name":"Computation Height","uom":"ft"}
{"key":"pe01bd7ef","category":"Extents","type":"String","name":"Scope Box","uom":null}
{"key":"p9fffb245","category":"Materials and Finishes","type":"Integer","name":"Color","uom":null}
{"key":"p1b3b6224","category":"Materials and Finishes","type":"String","name":"Transparency","uom":null}
{"key":"pd9fcab30","category":"Materials and Finishes","type":"Boolean","name":"Glow","uom":null}
{"key":"pf62e5a3c","category":"Structural","type":"Double","name":"Structural Framing Length Roundoff","uom":"ft"}
More formally, each field is described as follows:
Property | Nullable | Viewer Visible | Description |
---|---|---|---|
key | No | No | The unique key for the dimension in the index |
category | No | Yes | The attribute category name for the field from the original PDB |
type | No | No | The attribute type ID from the original PDB |
name | No | Yes | The attribute name from the original PDB |
uom | Yes | No | The attribute unit of measure from the original PDB |
Using the example fields resource above, if you want to retrieve the value for a property with a category of __name__
, a data type of String
with a name equal to name
, you need to use the key p153cb174
. To retrieve the value for a property with a category of Structural
, a data type of Double
, a name equal to Structural Framing Length Roundoff
, and a unit of measure set to ft
, you use the key pf62e5a3c
.
Basic Properties Resource
The properties resource contains the full index for the file version. The example row from a basic (non-diff) index is described in the table below.
{
"svf2Id": 68,
"lineageId": "a19f7db",
"externalId": "b5c4b31f-321a-418d-a61a-0c8e326aa154-0003f740",
"lmvId": 2388,
"databaseId": "3747dccf",
"props": {
"p00723fa6": "Main Model",
"p09faf620": "HSS7X7X.250",
"p0e507bbe": "None",
"p13b6b3a0": "HSS7X7X.250",
"p153cb174": "HSS-Hollow Structural Section-Column [259904]",
"p188478f2": 0.485383241976329e0,
"p20d8441e": "Structural Columns",
"p2a0774a1": 0e0,
"p30db51f9": "HSS-Hollow Structural Section-Column",
"p34ed55db": "F-1.2",
"p3c57b64e": "New Construction",
"p54217060": "B10",
"p5eddc473": "Revit Structural Columns",
"p63ed81bb": "Superstructure",
"p6637df3c": "Metal - Steel - ASTM A500 - Grade B - Rectangular and Square",
"p69a0daab": 5833333333333334e-16,
"p6aba1771": 0.01953125e0,
"p751e1b21": true,
"p773b5bd7": "Not Defined",
"p801ffb64": 0.0390625e0,
"p809920c7": "Square",
"p953136d0": 0.04e0,
"pa128dfb9": "Vertical",
"pa57238c6": "Minimum Intersection",
"pa7275c45": -2001330,
"pa7456b2d": true,
"pb5b8cef7": true,
"pbadfe721": "BEARING",
"pbb4f1bfe": "None",
"pc2b858d6": 22.4e0,
"pddd761c6": "FOUNDATION PLAN",
"pe61a57c3": 0e0,
"pee815a7f": "None",
"pef87fde6": 0e0,
"pf4ca60ab": 5833333333333334e-16,
"pfa63d9d0": -9803431364364671e-16
},
"propsHash": "bcde34b3",
"propsIgnored": {
"p6a81eafd": 2386,
"p93e93af5": 2387
},
"geomHash": "TCC2Cc9tvO4EVazM73O8BQ",
"bboxMin": {
"x": -1413565004170512e-13,
"y": -5410244931321833e-14,
"z": 10000000002097008e-14
},
"bboxMax": {
"x": -14063352214982766e-14,
"y": -53379471045994805e-15,
"z": 11101965298365471e-14
},
"views": [
"e7fda9d5",
"12fcb372"
]
}
Each JSON object row, like the example above, has the following standard properties:
Property | Description |
---|---|
svf2Id |
The SVF2 ID for this object in the Viewer |
lineageId |
The index manifest key for the file lineage that contains this index row |
externalId |
The SVF2 external ID associated with this row in the SVF2 property PDB database |
lmvId |
The SVF ID for this row in the Viewer |
databaseId |
The index manifest key for the PDB resource that contains this row |
props |
The field values associated with this object. This is a dynamic JSON object, the properties of which correspond to field keys from the fields resource created as part of the indexing process. |
propsHash |
A hash of the properties in this row, if this hash changes the properties associated with this row have changed |
propsIgnored |
The property field keys that were ignored when computing the row property hash |
geomHash |
A hash of the geometry that represents this object. If this hash changes, the object represented by this row is viewable and has changed shape. |
bboxMin |
The min (x,y,z) coordinates, which describe the minimum extent of a bounding box which contains this object |
bboxMax |
The max (x,y,z) coordinates, which describe the maximum extent of a bounding box which contains this object |
views |
The views in an indexed file that contain this row. If this array is null, the row (object) is not viewable in the Viewer.
The view keys in this array belong to the index manifest. Using these keys it is possible to locate the URN of the viewable that can
be loaded into the Viewer. Note, properties such as geomHash , bboxMin , bboxMax , lmvId , and svf2Id are only
applicable to index rows that are viewable in the Viewer. |
Diff Properties Resource
Diff index properties resources have an extended schema that builds on the schema for a basic index. The example row from a diff index is described in the table below.
{
"type": "OBJECT_CHANGED",
"svf2Id": 160,
"externalId": "552d2a83-4642-4d5c-8e7f-5de799129097-000d047a",
"lmvId": 2699,
"lineageId": "2b856593",
"databaseId": "3d0bd846",
"props": {
"p002932a2": 0.0,
"p01bbdcf2": "Arch-FIRST FLOOR",
"p0337db30": true,
"p09faf620": "45 Degree",
"p13b6b3a0": "45 Degree",
"p153cb174": "Round Transition - Angle [853114]",
"p163279c5": 0.9999999999999983,
"p1b2aabe1": 10.018420219779415,
"p20d8441e": "Duct Fittings",
"p240c30c1": "Coefficient from ASHRAE Table",
"p2508403c": "12\"ø-10\"ø",
"p2bb5b46f": 0.999999999999999,
"p2c0bde18": "Supply Air",
"p30db51f9": "Round Transition - Angle",
"p3c57b64e": "New Construction",
"p3caeb85d": 119.99999999999999,
"p440a5662": 0.9999999999999991,
"p4709f0b8": "12\"ø-10\"ø",
"p512a7a70": 0.0,
"p56cded73": 5.999999999999999,
"p5eddc473": "Revit Duct Fittings",
"p62b7a906": 5.999999999999999,
"p6de3a8d7": 5.999999999999999,
"p6e985a38": 0.0,
"p73d90dae": 0.0,
"p75e24cff": 0.9999999999999991,
"p7f055981": 5.0,
"p86cd967d": 0.0,
"p875a6521": "12\"ø-10\"ø",
"p8d70f1c5": "339",
"p8f7dfe92": 0.0,
"p92dc256f": 0.041666666666666664,
"p9d8824be": 0.041666666666666664,
"pa7275c45": -2008010,
"pab5862eb": "Supply Air",
"pb0457271": 2.414213562373096,
"pb257d26e": 0.999999999999999,
"pc9829743": "Air Ductwork",
"pd395474b": 1.9999999999999982,
"pdbb511ef": "SA",
"pdbc25565": "23.75.70.14",
"pe36ff9a6": "Mechanical Supply Air 2",
"pe49040a7": 119.99999999999999,
"pe5bcb794": 45.0,
"pe61a57c3": 0.0,
"pe62902c4": 0.999999999999999,
"peda7f9c8": 2.4142135623730954,
"pee815a7f": "None"
},
"propsHash": "66a75c85",
"propsIgnored": {
"p6a81eafd": 2545,
"p93e93af5": 2546
},
"geomHash": "6w/Zb+NZyMwH6LwMwGKZyw",
"bboxMin": {
"x": -1413565004170512e-13,
"y": -5410244931321833e-14,
"z": 10000000002097008e-14
},
"bboxMax": {
"x": -14063352214982766e-14,
"y": -53379471045994805e-15,
"z": 11101965298365471e-14
},
"views": [
"f109b687",
"f24d458"
],
"prev": {
"lmvId": 2699,
"lineageId": "b28c3429",
"databaseId": "936acb06",
"props": {
"p1b2aabe1": 10.5
},
"propsHash": "ad9828df",
"propsIgnored": {
"p6a81eafd": 2545,
"p93e93af5": 2546
},
"geomHash": "4s1yfJZdOhnBu2DdFL4HEw",
"bboxMin": {
"x": -1813565004170512e-13,
"y": -5410244931321833e-14,
"z": 10000000002097008e-14
},
"bboxMax": {
"x": -14063352214982766e-14,
"y": -52379471045994805e-15,
"z": 11101965298365471e-14
},
"views": [
"f109b687",
"8e525582"
]
}
}
Property | Description |
---|---|
type |
The kind of change. OBJECT_ADDED , a new object has been added to the model. OBJECT_CHANGED , either the position/shape of the
object (as defined by its bounding box) or the properties associated with the object have changed. OBJECT_REMOVED , the object was
present in the previous version of the file processed for this index but it no longer exists in the current version. |
changeType |
If the type of the Diff row is OBJECT_CHANGED the changeType property will be emitted into the index row. This property
describes the type of geometric change which has taken place. This property can have the following possible values. Transform , the
position of the object has changed but its geometry remains the same. Geometry , the object has changed shape and the geomHash
between the current and previous version of the object will be different. Unknown , the diff algorithm can not tell exactly how the
geometry has changed. Usually this means the object is made up of two or more fragments and the transformation of the first fragment
differs from the transformation of the second and subsequent fragments, so a single transformation can not explain the change. This
property does not apply to model properties in the props and prev.props objects. |
svf2Id |
The SVF2 ID for this object in the Viewer |
lineageId |
The index manifest key for the file lineage that contains this index row |
externalId |
The SVF2 external ID that is associated with this row in the SVF2 property PDB database |
lmvId |
The SVF ID for this row in the Viewer |
databaseId |
The index manifest key for the PDB resource that contains this row |
props |
The field values associated with this object. This is a dynamic JSON object, the properties of which correspond to field keys from the fields resource created as part of the indexing process. |
propsHash |
A hash of the properties in this row. If this hash changes the properties associated with this row have changed. |
propsIgnored |
The property field keys which were ignored when computing the row property hash |
geomHash |
A hash of the geometry that represents this object. If this hash changes, the object represented by this row is viewable and has changed shape. |
bboxMin |
The min (x,y,z) coordinates describing the minimum extent of a bounding box that contains this object |
bboxMax |
The max (x,y,z) coordinates describing the maximum extent of a bounding box that contains this object |
views |
The views in an indexed file that contain this row. If this array is null, the row (object) is not viewable in the Viewer.
The view keys in this array belong to the index manifest. Using these keys it is possible to locate the URN of the viewable that can
be loaded into the Viewer. Note, properties such as geomHash , bboxMin , bboxMax , lmvId , and svf2Id are only
applicable to index rows that are viewable in the Viewer. |
prev |
The previous version of the object. The props property, the properties associated with the object, are restricted to
only the properties that are different (changed) between the current version of this object and the current version. You can use the
propsHash and geomHash properties on both the current and prev to determine if the props or bbox* values are
different. |
Results Resources
Query results are line-delimited JSON files containing the rows matching the query filter. They are filtered subset of the raw properties resources created by indexing an individual file or creating a diff index between two versions of the same file. If no columns
transformation has been applied as part of the query, the rows take the form of the properties resources described above. If a column
transform is applied, the format of these rows is determined by the caller. See the accompanying query language reference for more details.