ID (id のパッケージ スキーマWindows 8)

パッケージのグローバル一意識別子を定義します。 パッケージ ID は、パッケージの属性のタプルとして表されます。

要素の階層

<Package>
<Id>

構文

<Identity Name                   = A string between 3 and 50 characters in length that consists of alpha-numeric, period, and dash characters.
          ProcessorArchitecture? = "x86" | "x64" | "arm" | "neutral"
          Publisher              = A string between 1 and 8192 characters in length that fits the regular expression  of a distinguished name : "(CN|L|O|OU|E|C|S|STREET|T|G|I|SN|DC|SERIALNUMBER|(OID\.(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*))+))=(([^,+="<>#;])+|".*")(, ((CN|L|O|OU|E|C|S|STREET|T|G|I|SN|DC|SERIALNUMBER|(OID\.(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*))+))=(([^,+="<>#;])+|".*")))*". Further, semantic validation ensures that the string is compliant with CertNameToStr Windows API implementation of X.500 rules.

          Version                = A version string in quad notation, "Major.Minor.Build.Revision".
          ResourceId?            = A string between 1 and 30 characters in length that consists of alpha-numeric, period, and dash characters. />

Key

? 省略可能 (0 または 1)

属性および要素

属性

属性 説明 データ型 必須
名前

パッケージの内容について説明します。 Name 属性 では、大文字と小文字が区別されません。

DisplayName 属性を使用して、ユーザーにパッケージ名を表示します。

英数字、ピリオド、およびダッシュ文字で構成される長さ 3 ~ 50 文字の文字列。 はい
ProcessorArchitecture

パッケージに含まれるコードのアーキテクチャについて説明します。 実行可能コードを含むパッケージには、この属性を含める必要があります。

この属性は、次のいずれかの値になります。

  • x86
  • X64
  • arm
  • 中立
いいえ
発行元

発行元情報について説明します。 このPublisherは、パッケージの署名に使用される証明書の発行元サブジェクト情報と一致する必要があります。 詳細については、「アプリのパッケージ化 」を参照してください。

識別名 : "(CN| の正規表現に適合する長さ 1 ~ 8192 文字の文字列|L|O|OU|E|C|S|STREET|T|G|I|SN|DC|SERIALNUMBER|(OID\。(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*)+))=(([^,+="#<>;])+|".*")(, ((CN|L|O|OU|E|C|S|STREET|T|G|I|SN|DC|SERIALNUMBER|(OID\。(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*)+))=(([^,+="#<>;])+|".*")))*". さらに、セマンティック検証により、文字列が X.500 規則の API Windows CertNameToStr に準拠している必要があります。 はい
ResourceId

パッケージに含まれる UI リソースの種類について説明します。 ResourceId は、発行元が指定した文字列です。

英数字、ピリオド、およびダッシュ文字で構成される長さ 1 から 30 文字の文字列。 いいえ
バージョン

パッケージのバージョン番号。

4 次表記のバージョン文字列 "Major.Minor.Build.Revision"。 はい

 

子要素

なし。

親要素

Parent 要素 説明
Package

アプリ パッケージ マニフェストのルート要素を定義します。 マニフェストは、システムに対するソフトウェアの構造と機能を記述します。

 

注釈

大事な Name 文字列 ResourceID 文字列の場合 は、次の規則に従う必要があります。

  • 使用できる入力文字 = ASCII サブセット
    • 大文字 (U+0041 ~ U+005A)
    • 小文字 (U+0061 ~ U+007A)
    • 数値 (U+0030 ~ U+0039)
    • ドット (U+002E)
    • ダッシュ (U+002D)
  • 禁止文字列
    • 等しくない...
      • "."、".."、"con"、"prn"、"aux"、 "nul"、"com1"、"com2"、"com3"、"com4"、"com5"、"com6"、"com7"、"com8"、"com9"、"lpt1"、"lpt2"、"lpt3"、"lpt4"、"lpt5"、"lpt6"、"lpt7"、"lpt8"、"lpt9"
    • で始めできません...
      • "con."、"prn."、"aux."、"nul."、 "com1."、"com2."、"com3."、"com4."、"com5."、"com6."、"com7."、"com8."、"com9."、"lpt1."、"lpt2."、"lpt3."、"lpt4."、"lpt5."、"lpt6."、"lpt7."、"lpt8."、"lpt9."、"xn-"
    • で終わる必要があります。...
      • "."
    • を含めできません...
      • ".xn---"

 

Name 属性 は、オペレーティング システムと開発者がパッケージを識別するために使用します。 Name 属性 は、エンド ユーザーに表示することを意図した属性ではありません。

アプリが異なるリソース パッケージに基づく場合、 ResourceId 属性は、特定のパッケージ名のユーザー アカウント全体で一意である必要があります。 リソースの ID に基づくメイン パッケージ バリアントは、同時にインストールすることはできません。 ただし、リソース専用パッケージの複数の同時バリアントを使用できます。 ResoureId 属性の例を次に示します。

  • 北米
  • アジア
  • ヨーロッパ言語

署名Publisherパッケージを開く際に、署名証明書のサブジェクト名に対して属性が検証されます。 Publisher属性がサブジェクト名と完全に一致しない場合、パッケージは無効です。 証明書に格納されているサブジェクト名から、意味的に等価な複数の文字列表現を構築できます。 次の正規化規則を使用して、属性Publisherそのサブジェクト名と一致します。

  • Unicode 値は UTF-8 でエンコードできます。

  • 名前に従来の電子メール コンポーネントが含まれている場合、国際化ドメイン名 (IDN) は Unicode 形式で表されます。

  • X.500 キー名を持つオブジェクト識別子 (OID) では、X.500 キー名 (たとえば、2.5.4.3 ではなく CN) を使用する必要があります。

  • X.500 キー名のない OID は、"OID." プレフィックス (OID.2.5.4.34 など) で識別されます。

  • OID キー名は、余分なスペースを含めずに等号 (CN=JohnSmith など) で値から区切ります。

  • 複数の相対識別名 (RDN) エントリは、コンマの後にスペース (CN=JohnSmith、O=Contoso など) で区切られます。

  • RDN 値は、先頭または末尾の空白、または次のいずれかの文字 (CN=" JohnSmith"、O="C++ Inc.") が含まれている場合にのみ、引用符で囲まれます。

    • コンマ (,)
    • プラス記号 (+)
    • 等号 (=)
    • インチ マーク (")
    • 円記号の後に文字 n (\n) が続く
    • 符号より小さい (<)
    • より大きい符号 (>)
    • シャープ記号 (#)
    • セミコロン (;)
  • 引用符は、インチマーク (") です。 RDN 値にインチマークが含まれている場合は、二重引用符 ("") を引用符で囲むことに加えて、二重引用符 ("") を使用する必要があります (たとえば、CN = "ウィリアム" "Smith")。

  • 複数値の RDN は許可されていません (例: CN = JohnSmith + O = Contoso)。

これらの規則はcertnametostr関数の動作に従い、証明書から予想されるPublisher属性値を決定するために使用できます。

次の例は、いずれかの SDK サンプルのパッケージマニフェストから取得されます。

<Identity Name="Microsoft.SDKSamples.ApplicationDataSample" 
          Version="1.0.0.0" 
          Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />

要件

Namespace http://schemas.microsoft.com/appx/2010/manifest