.usda railroad diagram - v0.3

Danny Spencer - December 2023

If you find it useful or have feedback, let me know! (email is here)

Based on the bison grammar file here: https://github.com/PixarAnimationStudios/OpenUSD/blob/v23.11/pxr/usd/sdf/textFileFormat.yy

Preprocessed with scripts, generated by Railroad Diagram Generator

Some additional notes:


layer

#magic ...layer_metadata_optprim_stmt\n+\n*

no references


layer_metadata_opt

\n*(\n*layer_metadata; stmtsep; stmtsep)\n*

referenced by:


layer_metadata

doc="string"identifier=metadata_valuedeleteaddprependappendreorderidentifier=None[typed_value_list]subLayers=[\n*sublayer_stmt, listsep, listsep]

referenced by:


sublayer_stmt

@asset.usda@(layer_offset_stmt; stmtsep; stmtsep)

referenced by:


layer_offset_stmt

offsetscale=number

referenced by:


prim_stmt

defclassoveridentifier."string"prim_metadata_opt{\n*prim_contents_list_item}reorderrootPrims=name_list

referenced by:


prim_metadata_opt

\n*(\n*prim_metadata; stmtsep; stmtsep)\n*

referenced by:


payload_list

Nonepayload_list_item[\n*payload_list_item, listsep, listsep]

referenced by:


payload_list_item

@asset.usda@<path/to/prim><path/to/prim>(\n*layer_offset_stmt; stmtsep; stmtsep)

referenced by:


reference_list

Nonereference_list_item[\n*reference_list_item, listsep, listsep]

referenced by:


reference_list_item

@asset.usda@<path/to/prim><path/to/prim>(\n*reference_params_item; stmtsep; stmtsep)

referenced by:


reference_params_item

layer_offset_stmtcustomData={typed_dictionary}

referenced by:


inherit_list

None<path/to/prim>[\n*<path/to/prim>, listsep, listsep]

referenced by:


specializes_list

None<path/to/prim>[\n*<path/to/prim>, listsep, listsep]

referenced by:


{relocates_map}

{\n*relocates_stmt, listsep, listsep}

referenced by:


relocates_stmt

<path/to/prim>:<path/to/prim>

referenced by:


name_list

"string"[\n*"string", listsep, listsep]

referenced by:


prim_contents_list_item

prim_propertyreordernameChildrenproperties=name_list; stmtsepprim_stmtvariantset_stmt\n+

referenced by:


variantset_stmt

variantSet"string"=\n*{\n*variant_stmt}

referenced by:


variant_stmt

"string"prim_metadata_opt{\n*prim_contents_list_item}\n*

referenced by:


prim_property

prim_attributeprim_relationship

referenced by:


prim_attribute_full_type

uniformconfigidentifier[]

referenced by:


connect_rhs

None<path/to/prim>[\n*<path/to/prim>, listsep, listsep]

referenced by:


time_samples_rhs

{\n*time_sample, listsep, listsep}

referenced by:


time_sample

extended_number:typed_valueNone

referenced by:


attribute_metadata_list_opt

(\n*attribute_metadata; stmtsep; stmtsep)

referenced by:


attribute_metadata_key

identifiercustomDatasymmetryArguments

referenced by:


attribute_metadata

doc="string"attribute_metadata_key=metadata_valuedeleteaddprependappendreorderidentifier=None[typed_value_list]permissiondisplayUnit=identifiersymmetryFunction=identifier

referenced by:


attribute_value

typed_valueNone

no references


{typed_dictionary}

{\n*typed_dictionary_element; stmtsep; stmtsep}

referenced by:


typed_dictionary_element

identifier[]"string"identifierkeyword=typed_valuedictionary"string"identifierkeyword={typed_dictionary}

referenced by:


{string_dictionary}

{\n*"string":"string", listsep, listsep}

referenced by:


metadata_value

{typed_dictionary}typed_valueNone

referenced by:


typed_value

typed_value_atomic(typed_value_tuple)[typed_value_list][]<path/to/prim>

referenced by:


typed_value_atomic

number"string"identifier@asset.usda@

referenced by:


[typed_value_list]

[\n*typed_value_list_item, listsep, listsep]

referenced by:


typed_value_list_item

typed_value_atomic[typed_value_list](typed_value_tuple)

referenced by:


(typed_value_tuple)

(\n*typed_value_tuple_item, listsep, listsep)

referenced by:


typed_value_tuple_item

typed_value_atomic(typed_value_tuple)

referenced by:


prim_relationship

customvaryingrelnamespaced:name=relationship_rhsrelationship_metadata_list_opt[<path/to/prim>].timeSamples=time_samples_rhsdefault=<path/to/prim>deleteaddprependappendreordercustomvaryingrelnamespaced:name=relationship_rhs

referenced by:


relationship_metadata_list_opt

(\n*relationship_metadata; stmtsep; stmtsep)

referenced by:


relationship_metadata_key

identifiercustomDatasymmetryArguments

referenced by:


relationship_metadata

doc="string"relationship_metadata_key=metadata_valuedeleteaddprependappendreorderidentifier=None[typed_value_list]permission=identifiersymmetryFunction=identifier

referenced by:


relationship_rhs

<path/to/prim>None[\n*<path/to/prim>, listsep, listsep]

referenced by:


identifier

[A-Z][a-z]_[0-9][A-Z][a-z]_::

referenced by:


namespaced:name

[A-Z][a-z]_[0-9][A-Z][a-z]_:keyword

referenced by:


extended_number

number-infinfnan

referenced by:


; stmtsep

;\n\n*

referenced by:


, listsep

,\n*

referenced by:


#magic ...

#usda ...#sdf ...\n

referenced by:


number

-[0-9].[0-9].[0-9]eE+-[0-9]-inf

referenced by:


@asset.usda@

@[^@\n]@@@@@@@[^@\n]\@@@@@@@@@

referenced by:


<path/to/prim>

<[^<>\r\n]>

referenced by:


prim_attribute

customprim_attribute_full_typenamespaced:name=typed_valueNoneattribute_metadata_list_optaddprependappenddeletereorderprim_attribute_full_typenamespaced:name.connect=connect_rhsprim_attribute_full_typenamespaced:name.timeSamples=time_samples_rhs

referenced by:


prim_metadata

dockind="string"identifier=metadata_valueaddprependappenddeletereorderpayload=payload_listinherits=inherit_listspecializes=specializes_listreferences=reference_listvariantSets=name_listidentifier=None[typed_value_list]permission=identifierrelocates={relocates_map}variants={typed_dictionary}symmetryFunction=identifierprefixSubstitutionssuffixSubstitutions={string_dictionary}

referenced by:


keyword

addappendclassconfigconnectcustomcustomDatadefdefaultdeletedictionarydisplayUnitdocinheritskindnameChildrenNoneoffsetoverpayloadpermissionprefixSubstitutionssuffixSubstitutionsprependpropertiesreferencesrelocatesrelreorderrootPrimsscalespecializessubLayerssymmetryArgumentssymmetryFunctiontimeSamplesuniformvariantsvariantSetvariantSetsvarying

referenced by: