Actually it turns out there’s an example in the docs further down which does the trick
# Example of a concrete, typed (IsA) schema with built-in applied API schemas
class MyCustomPrim "MyCustomPrim" (
inherits = </Typed>
# These listed applied API schemas will be built-in to this schema type.
prepend apiSchemas = ["ExampleSingleApplyAPI", "ExampleMultiApplyAPI:foo"]
) {
# Example of a fallback value override for a theoretical property defined in
# the API schema instance "ExampleMultiApplyAPI:foo"
bool exampleMulti:foo:boolAttr = true (
customData = {
bool apiSchemaOverride = true
}
}
}
Right on, @dhruvgovil. The concrete UsdLux light types use this pattern, and we might be leveraging it pretty significantly in the not-too-distant future to support other new features with existing schemas.