Metadata Types
There are three different kinds of metadata: simple, compound, and complex.
- Simple — These types consist of only a single file, which does not depend on another file for its existence. For example, a custom application is a simple type of metadata. Simple metadata types may be retrieved or deployed by themselves.
- Compound — These types consist of two files, a class file and a metadata file (the name is appended with -meta.xml.). For example, Apex classes and triggers, are compound types because there is a class file and a supporting metadata file.
- Complex — These metadata files may contain multiple named components. For example, a .object file may contain an entire custom object, or a subset of custom fields on that object, depending on what components were included in the project. The .workflow file behaves in a similar manner with respect to individual workflow types.
Custom fields can be considered both simple and complex. Simple because you can retrieve them alone, complex because they are always defined within the context of a standard or custom object.
For a list of the metadata types that can be retrieved or deployed with the Metadata API, and whether or not the component may be retrieved with the wildcard (*) symbol in package.xml, see Metadata Types in the Metadata API Developer’s Guide.