名前空間でプロパティを参照する

このトピックでは、 PropertyAccessorTableView でサポートされている名前空間とその子オブジェクトの一覧を示し、名前付きプロパティの参照について説明します。

Outlook オブジェクトで使用される名前空間

次の表に、名前空間と名前空間がサポートする Outlook オブジェクトの概要を示します。 名前空間によるプロパティの参照は大文字と小文字が区別されます。

名前空間 サポートされる Outlook オブジェクト
https://schemas.microsoft.com/mapi/proptag Outlook アイテム オブジェクトAddressEntryAddressListAttachmentExchangeDistributionListExchangeUserFolderRecipientStore オブジェクト。
https://schemas.microsoft.com/mapi/id (上記と同様)
https://schemas.microsoft.com/mapi/string (上記と同様)
https://schemas.microsoft.com/exchange (上記と同様)
urn:schemas-microsoft-com:office:office Outlook アイテム オブジェクト
urn:schemas-microsoft-com:office:outlook Outlook アイテム オブジェクト
Dav: Outlook アイテム オブジェクト
urn:schemas:calendar Outlook アイテム オブジェクト
urn:schemas:contacts Outlook アイテム オブジェクト
urn:schemas:httpmail Outlook アイテム オブジェクト
urn:schemas:mailheader Outlook アイテム オブジェクト

メッセージング アプリケーション プログラミング インターフェイス (MAPI) 名前空間

Outlook がサポートするプロパティの多くは MAPI プロパティです。 PropertyAccessor オブジェクトは、MAPI 名前空間の 3 つのサブネームスペース (proptag、id、および string) をサポートします。 次の各セクションには、サブネームスペースの説明、そのサブネームスペース内のプロパティを参照する形式の説明、および [RFC4234] で指定されている拡張Backus-Naurフォーム (ABNF) で表される構文の定義が含まれています。

proptag 名前空間

この名前空間は、プロパティのプロパティ タブを使用して MAPI 名前空間のプロパティにアクセスするときに使用されます。 MAPI プロパティ範囲内のプロパティ (プロパティ ID が 0x8000 未満のプロパティ) のみをサポートしています。 この名前空間のプロパティを参照するための形式は次のとおりです。

https://schemas.microsoft.com/mapi/proptag/0xHHHHHHHH

HHHHHHHH は、上位 16 ビットに一意のプロパティ識別子、下位 16 ビットにプロパティ タイプが指定されている 16 進数のプロパティ タグ値を表します。 すべての MAPI プロパティには、 プロパティが MAPI 、Outlook、またはサービス プロバイダーで定義されているかどうかに関係なく、プロパティ タグを指定する必要があります。 16 進数値の先頭にはプレフィックス "0x" を指定する必要があります。

正式には、この名前空間のプロパティの参照は ABNF で次のように定義できます。

  proptag-specifier = "https://schemas.microsoft.com/mapi/proptag/x" property-id property-type 
  property-id = 4HEXDIG 
  property-type = 4HEXDIG

たとえば、以下は、Outlook がそのオブジェクト モデルに Subject として公開している MAPI プロパティの PidTagSubject を表します。

https://schemas.microsoft.com/mapi/proptag/0x0037001E

id 名前空間

この名前空間は、名前空間のグローバル一意識別子 (GUID) によって識別される名前空間のプロパティに、プロパティの識別子を使用してアクセスするときに使用されます。 この名前空間のプロパティを参照するための形式は次のとおりです。

https://schemas.microsoft.com/mapi/id/{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}/HHHHHHHH

{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH} は名前空間の GUID を表し、HHHHHHHH はプロパティ タブを表します。

正式には、この名前空間のプロパティの参照は ABNF で次のように定義できます。

  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

たとえば、以下は Outlook NoAging プロパティを表しています。

https://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/850E000B

string 名前空間

この名前空間は、識別済みの名前空間の文字列名が付いたプロパティにアクセスするときに使用されます。 この名前空間のプロパティを参照するための形式は次のとおりです。

https://schemas.microsoft.com/mapi/string/{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}/ name

{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHHHHHHHHHHHHHH} は 名前空間 GUID を表し、 名前 は文字列として定義されたローカル プロパティ名です。

正式には、この名前空間のプロパティの参照は ABNF で次のように定義できます。

  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

この名前空間を使用する例を以下に示します。

https://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/content-class

string 名前空間の名前付きプロパティの参照には、エスケープ ルールが適用されます。 文字列の識別子を持つ名前付きプロパティ (作成者、会社名、役職など) を参照するときに、プロパティ名にスペースや一重引用符、二重引用符、パーセント文字が含まれている場合は、Universal Resource Locator (URL) エスケープを使用して、次の表に示す対応するエスケープ文字を使ってこれらの文字を表す必要があります。

プロパティ参照に含まれる文字 エスケープ文字
スペース文字 %20
二重引用符 %22
単一引用符 %27
パーセント文字 %25

PropertyAccessor.GetProperty メソッドを使用して、MAPI 文字列名前空間で定義されている名前付きプロパティ Mom の "Gift" の値を指定して取得する方法の例を次に示します。

  PropertyAccessor.GetProperty("https://schemas.microsoft.com/mapi/string/{00020329-0000-0000-C000-000000000046}/Mom%27s%20%22Gift%22")

Exchange 名前空間

exchange 名前空間は、文字列名の付いた Exchange プロパティにアクセスするときに使用されます。 この名前空間のプロパティを参照するための形式は次のとおりです。

https://schemas.microsoft.com/exchange/ name

name は、文字列として定義されたローカル プロパティ名です。

次の例は、この名前空間が参照するプロパティです。

https://schemas.microsoft.com/exchange/readreceiptrequested

Office 名前空間

PropertyAccessor オブジェクトは、2 つの Office サブ名前空間をサポートします。

Office 名前空間

この名前空間は、 DocumentItem オブジェクトのプロパティにアクセスするために使用されます。 この名前空間のプロパティを参照するための形式は次のとおりです。

urn:schemas-microsoft-com:office:office#

name は、文字列として定義されたローカル プロパティ名です。

Office 名前空間を使用して DocumentItem プロパティを参照する例を次に示します。

  • urn:schemas-microsoft-com:office:office#Subject

  • urn:schemas-microsoft-com:office:office#Template

Outlook 名前空間

この名前空間は、Outlook アイテムレベルのプロパティにアクセスするときに使用されます。 プロパティ参照をサポートするその他の名前空間と同様に、この名前空間を使用して、オブジェクト モデルに明示的に公開されていない Outlook プロパティにアクセスします。 この名前空間のプロパティを参照するための形式は次のとおりです。

urn:schemas-microsoft-com:office:outlook#

name は、文字列として定義されたローカル プロパティ名です。

Outlook 名前空間を使用して Outlook アイテム レベルのプロパティを参照する例を次に示します。

urn:schemas-microsoft-com:office:outlook#remotemessagesize

分散オーサリングとバージョン管理 (DAV) 名前空間

DAV 名前空間は、Outlook のアイテムレベル プロパティにアクセスするときに使用されます。 DAV 名前空間のプロパティは、URI (Uniform Resource Identifier) 名前空間の参照を使用して調べられます。 形式は、名前空間 URI 接頭辞と、文字列で表されたローカル プロパティ名が連結されたもので、URN (Uniform Resource Name)、または URL (Uniform Resource Locator) のいずれかである名前空間 URI を持っています。

次の例では、PropertyAccessor オブジェクトがサポートする DAV 名前空間を示しています。

  • Dav:

  • urn:schemas:calendar

  • urn:schemas:contacts

  • urn:schemas:httpmail

  • urn:schemas:mailheader

次に示すのは、異なる DAV 名前空間が参照するプロパティの一例です。

  • DAV:checkintime

  • urn:schemas:httpmail:subject

  • urn:schemas:mailheader:subject

関連項目

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。