MetadadosMetadata

Os metadados são informações sobre um valor que está associado a um valor.Metadata is information about a value that is associated with a value. Os metadados são representados como um valor de registro, chamado de registro de metadados.Metadata is represented as a record value, called a metadata record. Os campos de um registro de metadados podem ser usados para armazenar os metadados de um valor.The fields of a metadata record can be used to store the metadata for a value. Cada valor tem um registro de metadados.Every value has a metadata record. Se o valor do registro de metadados não tiver sido especificado, o registro de metadados estará vazio (não terá nenhum campo).If the value of the metadata record has not been specified, then the metadata record is empty (has no fields). A associação de um registro de metadados com um valor não altera o comportamento do valor em avaliações, exceto aqueles que inspecionam explicitamente os registros de metadados.Associating a metadata record with a value does not change the value’s behavior in evaluations except for those that explicitly inspect metadata records.

Um valor de registro de metadados é associado a um valor x usando o valor de sintaxe meta [record].A metadata record value is associated with a value x using the syntax value meta [record]. Por exemplo, o seguinte associa um registro de metadados aos campos de classificação e marcações com o valor de texto "Mozart":For example, the following associates a metadata record with Rating and Tags fields with the text value "Mozart":

"Mozart" meta [ Rating = 5,   
Tags = {"Classical"} ]  

Um registro de metadados pode ser acessado para um valor usando a função Value.Metadata.A metadata record can be accessed for a value using the Value.Metadata function. No exemplo a seguir, a expressão no campo ComposerRating acessa o registro de metadados do valor no campo do compositor e, em seguida, acessa o campo de classificação do registro de metadados.In the following example, the expression in the ComposerRating field accesses the metadata record of the value in the Composer field, and then accesses the Rating field of the metadata record.

[  
    Composer = "Mozart" meta [ Rating = 5, Tags = {"Classical"} ],  
    ComposerRating = Value.Metadata(Composer)[Rating]   // 5  
]  

Os registros de metadados não são preservados quando um valor é usado com um operador ou função que cria um novo valor.Metadata records are not preserved when a value is used with an operator or function that constructs a new value. Por exemplo, se dois valores de texto forem concatenados usando o operador &, os metadados do valor de texto resultante serão um registro vazio [].For example, if two text values are concatenated using the & operator, the metadata of the resulting text value is an empty record [].

As funções de biblioteca padrão Value.RemoveMetadata e Value.ReplaceMetadata podem ser usadas para remover todos os metadados de um valor e para substituir os metadados de um valor.The standard library functions Value.RemoveMetadata and Value.ReplaceMetadata can be used to remove all metadata from a value and to replace a value’s metadata.