Referenciando propriedades por Namespace
Este tópico lista os namespaces compatíveis com PropertyAccessor, Table e View e seus objetos filhos e discute referenciar propriedades nomeadas.
Namespaces usados por objetos do Outlook
A seguinte tabela resume os namespaces e os objetos do Outlook com suporte dado pelos namespaces. Observe que a propriedade indicada pelos namespaces diferencia maiúsculas de minúsculas.
Namespaces | Objetos do Outlook com Suporte |
---|---|
https://schemas.microsoft.com/mapi/proptag | Objetos de item do Outlook, AddressEntry, AddressList, Attachment, ExchangeDistributionList, ExchangeUser, Folder, Destinatário e objetos Store . |
https://schemas.microsoft.com/mapi/id | (Igual ao de acima) |
https://schemas.microsoft.com/mapi/string | (Igual ao de acima) |
https://schemas.microsoft.com/exchange | (Igual ao de acima) |
urn:schemas-microsoft-com:office:office | Objetos de item do Outlook |
urn:schemas-microsoft-com:office:outlook | Objetos de item do Outlook |
DAV: | Objetos de item do Outlook |
urn:schemas:calendar | Objetos de item do Outlook |
urn:schemas:contacts | Objetos de item do Outlook |
urn:schemas:httpmail | Objetos de item do Outlook |
urn:schemas:mailheader | Objetos de item do Outlook |
Namespaces MAPI (Interface de Programação de Aplicativo de Mensagens)
Muitas propriedades com suporte no Outlook são propriedades MAPI. O objeto PropertyAccessor dá suporte a três subnamespaces do namespace MAPI: proptag, id e string. Cada uma das seções a seguir contém uma descrição para o subnamespace, uma descrição do formato para fazer referência a uma propriedade nesse subnamespace e uma definição da sintaxe expressa no Formulário de Backus-Naur Aumentada (ABNF), especificada em [RFC4234].
namespace proptag
Esse namespace é usado para acessar propriedades no namespace MAPI usando a marca de propriedade de uma propriedade. Ele somente dá suporte a propriedades no intervalo de propriedade MAPI (ou seja, propriedades com um identificador de propriedade abaixo de 0x8000). O seguinte formato é usado para indicar uma propriedade no namespace:
https://schemas.microsoft.com/mapi/proptag/0xHHHHHHHH
HHHHHHHHH representa um valor de marca de propriedade hexadecimal, com um identificador de propriedade exclusivo na ordem superior de 16 bits e um tipo de propriedade na ordem inferior de 16 bits. Todas as propriedades MAPI devem ter um rótulo de propriedade, independentemente da propriedade ser definida por MAPI, Outlook ou um provedor de serviços. O valor hexadecimal deve seguir o prefixo "0x".
Formalmente, as referências de propriedades neste namespace podem ser definidas no ABNF da seguinte maneira:
proptag-specifier = "https://schemas.microsoft.com/mapi/proptag/x" property-id property-type
property-id = 4HEXDIG
property-type = 4HEXDIG
Por exemplo, o seguinte representa a propriedade MAPI PidTagSubject que o Outlook expõe em seu modelo de objeto como Assunto:
https://schemas.microsoft.com/mapi/proptag/0x0037001E
Namespace de id
Esse namespace é usado para acessar propriedades em um namespace identificado pelo GUID (identificador globalmente exclusivo) do namespace, usando o identificador da propriedade. O seguinte formato é usado para indicar uma propriedade no namespace:
https://schemas.microsoft.com/mapi/id/{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}/HHHHHHHH
{HHHHHHHHH-HHH-HHHH-HHHH-HHHHHHHHHHHHHHHHHH} representa o GUID do namespace e HHHHHHHHH representa a marca de propriedade.
Formalmente, as referências de propriedades neste namespace podem ser definidas no ABNF da seguinte maneira:
id-specifier = "https://schemas.microsoft.com/mapi/id/" property-set "/x" property-long-id
property-set = "{" 8HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 12HEXDIG "}"
property-long-id = 8HEXDIG
Por exemplo, o seguinte representa a propriedade NoAging do Outlook:
https://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/850E000B
namespace de cadeia de caracteres
Esse namespace é usado para acessar propriedades nomeadas por cadeia de caracteres em um namespace identificado. O seguinte formato é usado para indicar uma propriedade no namespace:
https://schemas.microsoft.com/mapi/string/{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}/ name
{HHHHHHHHH-HHHH-HHH-HHHH-HHHHHHHHHHHHHHHHHH} representa o GUID do namespace e o nome é o nome da propriedade local definido como uma cadeia de caracteres.
Formalmente, as referências de propriedades neste namespace podem ser definidas no ABNF da seguinte maneira:
string-specifier = "https://schemas.microsoft.com/mapi/string/" property-set "/" property-name
property-set = "{" 8*HEXDIG "-" 4*HEXDIG "-" 4*HEXDIG "-" 4*HEXDIG "-" 12*HEXDIG "}"
property-name = 1*CHAR
Veja a seguir um exemplo que usa este namespace:
https://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/content-class
As regras de fuga se aplicam à referência a propriedades nomeadas no namespace de cadeia de caracteres. Ao fazer referência a uma propriedade nomeada que tenha um identificador de cadeia de caracteres (por exemplo, Autor, Empresa e Título), se o nome da propriedade contiver um espaço, uma cotação única, uma cotação dupla ou um caractere percentual, você deverá usar a URL (Universal Resource Locator) fugindo e representar esses caracteres com a cadeia de caracteres de escape correspondente, conforme mostrado na tabela a seguir.
Caractere na referência de propriedade | Cadeia de Caracteres de Escape |
---|---|
Caractere de espaço | %20 |
Aspas duplas | %22 |
Aspas simples | %27 |
Percentual de caractere | %25 |
Veja a seguir um exemplo de como você especifica e obtém o valor de uma propriedade nomeada, "Gift" da mamãe, definida no namespace de cadeia de caracteres MAPI, usando o método PropertyAccessor.GetProperty :
PropertyAccessor.GetProperty("https://schemas.microsoft.com/mapi/string/{00020329-0000-0000-C000-000000000046}/Mom%27s%20%22Gift%22")
Namespace do Exchange
O namespace do Exchange é usado para acessar propriedades do Exchange nomeadas pela cadeia de caracteres. O seguinte formato é usado para indicar uma propriedade no namespace:
https://schemas.microsoft.com/exchange/ name
nome é o nome da propriedade local definido como uma cadeia de caracteres.
O exemplo seguinte é uma propriedade indicada por esse namespace:
https://schemas.microsoft.com/exchange/readreceiptrequested
Namespaces do Office
O objeto PropertyAccessor dá suporte a dois subnamespaces do Office:
Namespace do Office
Esse namespace é usado para acessar propriedades do objeto DocumentItem . O seguinte formato é usado para indicar uma propriedade no namespace:
nome urn:schemas-microsoft-com:office: office#
nome é o nome da propriedade local definido como uma cadeia de caracteres.
Veja a seguir alguns exemplos de referenciar propriedades DocumentItem usando o namespace do Office:
urn:schemas-microsoft-com:office:office#Subject
urn:schemas-microsoft-com:office:office#Template
Namespace do Outlook
Esse namespace é usado para acessar propriedades no nível do item do Outlook. Semelhante aos outros namespaces que dão suporte à referência de propriedade, use esse namespace para acessar propriedades do Outlook que não são explicitamente expostas no modelo de objeto. O seguinte formato é usado para indicar uma propriedade no namespace:
nome urn:schemas-microsoft-com:office:outlook#
nome é o nome da propriedade local definido como uma cadeia de caracteres.
Veja a seguir um exemplo de referenciar uma propriedade no nível do item do Outlook usando o namespace do Outlook:
urn:schemas-microsoft-com:office:outlook#remotemessagesize
Namespaces da DAV (criação e versão distribuída)
Esses namespaces DAV são usados para acessar propriedades do nível de item do Outlook. O escopo de uma propriedade em um namespace DAV é definido com uma referência de namespace URI (Uniform Resource Identifier). O formato é uma concatenação do prefixo de URI do namespace e do nome da propriedade local expresso em uma cadeia de caracteres, com o URI de namespace sendo URN (Uniform Resource Name) ou URL (Uniform Resource Locator).
Os seguintes exemplos são namespaces DAV aos quais o objeto PropertyAccessor dá suporte:
DAV:
urn:schemas:calendar
urn:schemas:contacts
urn:schemas:httpmail
urn:schemas:mailheader
Estes são alguns exemplos de propriedades sendo indicadas por namespaces DAV diferentes:
DAV:checkintime
urn:schemas:httpmail:subject
urn:schemas:mailheader:subject
Confira também
- Marcas de propriedade MAPI
- Visão geral do identificador de propriedade MAPI
- Visão geral do tipo de propriedade MAPI
- Intervalos de identificador de propriedade
- Tipos de propriedade
- MAPI denominada propriedades
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.