Crate: Is primChildren all encompassing?

In the Crate document, prims have the primChildren and properties field.

Are these considered the source of truth of what children a prim path might have? If they do not include a path that does exist in the file, should that path be ignored?

e.g lets say I have a prims at path /foo, /foo/eggs, /foo/spam but primChildren only lists eggs.

Does that mean that /foo/spam is essentially an orphaned path that doesn’t factor into the stage?

1 Like

Yeah primChildren is definitive about the prim spec children a given prim spec has – that’s defined by the Sdf schema.

I’m not sure what exactly you mean when you say you have prims at paths /foo, /foo/eggs, /foo/spam but yes if /foo’s primChildren only has eggs then it does not have a prim spec child named spam.

In a crate file, it’s totally possible to have paths in the path table that do not correspond to extant specs. For example, if /foo had a relationship rel with the target /foo/spam, then /foo/spam would appear in the crate file’s path table, despite there being no spec at the path /foo/spam.

Okay that’s great , thanks Alex. I just wanted to make sure I codified it accordingly.