Gramática de XamlName

La gramática XamlName es una gramática específica que se define en la especificación del lenguaje XAML [MS-XAML], que se reproduce aquí por fines de conveniencia.

Desde la especificación XAML

La especificación [MS-XAML] define la gramática XamlName para identificar el conjunto de identificadores simbólicos legales que se usan para tipos y propiedades.

Los valores de cadena que son de tipo XamlName deben cumplir la siguiente gramática:

XamlName ::= NameStartChar ( NameChar )*
NameStartChar ::= LetterCharacter | '_'
NameChar ::= NameStartChar | DecimalDigit | CombiningCharacter
LetterCharacter ::= UnicodeLu | UnicodeLl | UnicodeLo | UnicodeLt | UnicodeNl
DecimalDigit ::= UnicodeNd
CombiningCharacter ::= UnicodeMn | UnicodeMc

Que presupone los siguientes valores de categoría generales, tal y como se define en la base de datos de caracteres Unicode

Categoría Unicode Descripción
Lu Letra, mayúscula
Ll Letra, minúscula
Lt Letra, inicial en mayúscula
Lm Letra, modificador
Lo Letra, otra
Mn Marca, sin espacios
Mc Marca, con espacios y combinación
Nd Número, decimal
Nl Número, letra

XAML define una segunda gramática, DottedXamlName, que se usa para las referencias calificadas de propiedades y eventos, y también para los miembros adjuntos. Para obtener más información, consulte DependencyProperty e Información general sobre XAML (WPF .NET).

Los valores de cadena que son de tipo DottedXamlName deben ser conformes a la siguiente gramática:

DottedXamlName ::= XamlName '.' XamlName

Comentarios

Para la especificación completa, consulte [MS-XAML].