3.1 Xaml Vocabularies and the Xaml Schema Information Set
This specification does not mandate any particular application or interpretation of a Xaml Document. Each individual application of Xaml will define its own Xaml Vocabulary. For example, Xaml could be used to define the structure of a graphical user interface, or it could be used to represent a list of pieces of music. This specification does not define any such application-specific vocabularies. This specification provides the information to enable such vocabularies to be defined.
A particular Xaml vocabulary is defined as a Xaml Schema. A schema defines the object types that may be used in a Xaml instance, determining the members and content each type supports. (Individual applications will likely go further, assigning meanings to element types. However, that is beyond the scope of a Xaml Schema.) Furthermore, some schema features are advisory – a schema may contain information which is not strictly required to process a Xaml Document, but which may be useful to tools. (For example, the information may enable compilers to provide better warnings, or for editors to offer better discoverability.)
A Xaml Schema is always associated with a particular namespace URI. XML representations of Xaml indicate their vocabulary through XML namespaces – the namespace URI of an element or attribute indicates the Xaml Schema to which that node belongs.
This specification does not define a Xaml Schema file format. Instead, this specification defines an abstract data model for schemas, the Xaml Schema Information Set. This specifies the information required to form a complete schema. It is defined in Section 3, “Xaml Schema Information Set”.