[要約] RFC 5122は、XMPPのための国際化されたリソース識別子(IRI)と統一リソース識別子(URI)に関する規格です。このRFCの目的は、XMPPプロトコルでの国際化とURIの使用をサポートすることです。

Network Working Group                                     P. Saint-Andre
Request for Comments: 5122                                           XSF
Obsoletes: 4622                                            February 2008
Category: Standards Track
        

Internationalized Resource Identifiers (IRIs) and Uniform Resource Identifiers (URIs) for the Extensible Messaging and Presence Protocol (XMPP)

拡張可能なメッセージと存在プロトコル(XMPP)のための国際化されたリソース識別子(IRIS)およびユニフォームリソース識別子(URI)

Status of This Memo

本文書の位置付け

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

このドキュメントは、インターネットコミュニティのインターネット標準トラックプロトコルを指定し、改善のための議論と提案を要求します。このプロトコルの標準化状態とステータスについては、「インターネット公式プロトコル標準」(STD 1)の現在のエディションを参照してください。このメモの配布は無制限です。

Abstract

概要

This document defines the use of Internationalized Resource Identifiers (IRIs) and Uniform Resource Identifiers (URIs) in identifying or interacting with entities that can communicate via the Extensible Messaging and Presence Protocol (XMPP).

このドキュメントでは、拡張可能なメッセージングおよびプレゼンスプロトコル(XMPP)を介して通信できるエンティティを識別または相互作用する際に、国際化されたリソース識別子(IRIS)および均一なリソース識別子(URI)の使用を定義します。

This document obsoletes RFC 4622.

このドキュメントは、RFC 4622を廃止します。

Table of Contents

目次

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
     1.1.  Terminology  . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Use of XMPP IRIs and URIs  . . . . . . . . . . . . . . . . . .  4
     2.1.  Rationale  . . . . . . . . . . . . . . . . . . . . . . . .  4
     2.2.  Form . . . . . . . . . . . . . . . . . . . . . . . . . . .  5
     2.3.  Authority Component  . . . . . . . . . . . . . . . . . . .  6
     2.4.  Path Component . . . . . . . . . . . . . . . . . . . . . .  7
     2.5.  Query Component  . . . . . . . . . . . . . . . . . . . . .  8
     2.6.  Fragment Identifier Component  . . . . . . . . . . . . . .  9
     2.7.  Generation of XMPP IRIs/URIs . . . . . . . . . . . . . . . 10
     2.8.  Processing of XMPP IRIs/URIs . . . . . . . . . . . . . . . 13
     2.9.  Internationalization . . . . . . . . . . . . . . . . . . . 16
   3.  IANA Registration of xmpp URI Scheme . . . . . . . . . . . . . 16
     3.1.  URI Scheme Name  . . . . . . . . . . . . . . . . . . . . . 16
     3.2.  Status . . . . . . . . . . . . . . . . . . . . . . . . . . 16
     3.3.  URI Scheme Syntax  . . . . . . . . . . . . . . . . . . . . 17
     3.4.  URI Scheme Semantics . . . . . . . . . . . . . . . . . . . 17
     3.5.  Encoding Considerations  . . . . . . . . . . . . . . . . . 17
     3.6.  Applications/Protocols That Use This URI Scheme Name . . . 18
     3.7.  Interoperability Considerations  . . . . . . . . . . . . . 18
     3.8.  Security Considerations  . . . . . . . . . . . . . . . . . 18
     3.9.  Contact  . . . . . . . . . . . . . . . . . . . . . . . . . 18
     3.10. Author/Change Controller . . . . . . . . . . . . . . . . . 18
     3.11. References . . . . . . . . . . . . . . . . . . . . . . . . 18
   4.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 18
   5.  Security Considerations  . . . . . . . . . . . . . . . . . . . 19
     5.1.  Reliability and Consistency  . . . . . . . . . . . . . . . 19
     5.2.  Malicious Construction . . . . . . . . . . . . . . . . . . 20
     5.3.  Back-End Transcoding . . . . . . . . . . . . . . . . . . . 20
     5.4.  Sensitive Information  . . . . . . . . . . . . . . . . . . 20
     5.5.  Semantic Attacks . . . . . . . . . . . . . . . . . . . . . 21
     5.6.  Spoofing . . . . . . . . . . . . . . . . . . . . . . . . . 21
   6.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 21
   7.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 21
     7.1.  Normative References . . . . . . . . . . . . . . . . . . . 21
     7.2.  Informative References . . . . . . . . . . . . . . . . . . 22
   Appendix A.  Differences from RFC 4622 . . . . . . . . . . . . . . 25
   Appendix B.  Copying Conditions  . . . . . . . . . . . . . . . . . 25
        
1. Introduction
1. はじめに

The Extensible Messaging and Presence Protocol (XMPP) is a streaming XML technology that enables any two entities on a network to exchange well-defined but extensible XML elements (called "XML stanzas") at a rate close to real time.

拡張可能なメッセージとプレゼンスプロトコル(XMPP)は、ネットワーク上の任意の2つのエンティティが明確に定義されているが拡張可能なXML要素(「XMLスタンザ」と呼ばれる)をリアルタイムに近いレートで交換できるようにするストリーミングXMLテクノロジーです。

As specified in [XMPP-CORE], entity addresses as used in communications over an XMPP network must not be prepended with a Uniform Resource Identifier (URI) scheme (as specified in [URI]). However, applications external to an XMPP network may need to identify XMPP entities either as URIs or, in a more modern fashion, as Internationalized Resource Identifiers (IRIs; see [IRI]). Examples of such external applications include databases that need to store XMPP addresses and non-native user agents such as web browsers and calendaring applications that provide interfaces to XMPP services.

[xmpp-core]で指定されているように、XMPPネットワークを介した通信で使用されるエンティティアドレスは、均一なリソース識別子(URI)スキーム([URI]で指定)で準備してはなりません。ただし、XMPPネットワークの外部アプリケーションは、XMPPエンティティをURISとして、またはより近代的な方法で、国際化されたリソース識別子(IRIS; [IRI]を参照)として識別する必要がある場合があります。このような外部アプリケーションの例には、XMPPアドレスを保存する必要があるデータベースと、XMPPサービスにインターフェイスを提供するWebブラウザーなどの非ネイティブユーザーエージェントが含まれます。

The format for an XMPP address is defined in [XMPP-CORE]. Such an address may contain nearly any Unicode character [UNICODE] and must adhere to various profiles of stringprep [STRINGPREP]. The result is that an XMPP address is fully internationalizable and is very close to being an IRI without a scheme. However, given that there is no freestanding registry of IRI schemes, it is necessary to define XMPP identifiers primarily as URIs rather than as IRIs, and to register an XMPP URI scheme instead of an IRI scheme. Therefore, this document does the following:

XMPPアドレスの形式は[XMPP-Core]で定義されています。このようなアドレスには、ほぼすべてのUnicode文字[Unicode]が含まれている場合があり、StringPrep [StringPrep]のさまざまなプロファイルを順守する必要があります。その結果、XMPPアドレスは完全に国際化可能であり、スキームのないIRIに非常に近いものです。ただし、IRIスキームの自立型レジストリがないことを考えると、XMPP識別子を主にIRISとしてではなくURIとして定義し、IRIスキームの代わりにXMPP URIスキームを登録する必要があります。したがって、このドキュメントは次のとおりです。

o Specifies how to identify XMPP entities as IRIs or URIs.

o XMPPエンティティをIRISまたはURIとして識別する方法を指定します。

o Specifies how to interact with XMPP entities as IRIs or URIs.

o IRISまたはURISとしてXMPPエンティティと対話する方法を指定します。

o Formally defines the syntax for XMPP IRIs and URIs.

o XMPP IRISおよびURISの構文を正式に定義します。

o Specifies how to transform XMPP IRIs into URIs and vice versa.

o XMPP IrisをURIに変換する方法とその逆を指定します。

o Registers the xmpp URI scheme.

o XMPP URIスキームを登録します。

1.1. Terminology
1.1. 用語

This document inherits terminology from [IRI], [URI], and [XMPP-CORE].

このドキュメントは、[IRI]、[URI]、および[XMPP-CORE]の用語を継承します。

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [TERMS].

「必須」、「そうしない」、「必須」、「shall」、「shall "、" ingle "、" should "、" not "、" becommended "、" bay "、および「optional」は、RFC 2119 [用語]に記載されているように解釈される。

2. Use of XMPP IRIs and URIs
2. XMPP IRISおよびURISの使用
2.1. Rationale
2.1. 根拠

As described in [XMPP-IM], instant messaging and presence applications of XMPP must handle im: and pres: URIs (as specified by [CPIM] and [CPP]). However, there are many other applications of XMPP (including network management, workflow systems, generic publish-subscribe, remote procedure calls, content syndication, gaming, and middleware), and these applications do not implement instant messaging and presence semantics. Furthermore, a generic XMPP entity does not implement the semantics of any existing URI scheme, such as the http:, ftp:, or mailto: scheme. Therefore, it is appropriate to define a new URI scheme that makes it possible to identify or interact with any XMPP entity (not just instant messaging and presence entities) as an IRI or URI.

[XMPP-IM]で説明されているように、XMPPのインスタントメッセージングと存在アプリケーションは、IM:およびpres:uris([cpim]および[cpp]で指定)を処理する必要があります。ただし、XMPPには他にも多くのアプリケーションがあり(ネットワーク管理、ワークフローシステム、一般的なパブリッシュサブスクライブ、リモートプロシージャコール、コンテンツシンジケーション、ゲーム、およびミドルウェア)、これらのアプリケーションはインスタントメッセージングと存在セマンティクスを実装していません。さらに、汎用XMPPエンティティは、HTTP:、FTP:、またはMailTo:スキームなど、既存のURIスキームのセマンティクスを実装しません。したがって、XMPPエンティティ(インスタントメッセージングおよび存在エンティティだけでなく)をIRIまたはURIとして識別または相互作用させることを可能にする新しいURIスキームを定義することが適切です。

XMPP IRIs and URIs are defined for use by non-native interfaces and applications. In order to ensure interoperability on XMPP networks, when data is routed to an XMPP entity (e.g., when an XMPP address is contained in the 'to' or 'from' attribute of an XML stanza) or an XMPP entity is otherwise identified in standard XMPP protocol elements, the entity MUST be addressed as <[node@]domain[/resource]> (i.e., without a prepended scheme), where the "node identifier", "domain identifier", and "resource identifier" portions of an XMPP address conform to the definitions provided in Section 3 of [XMPP-CORE].

XMPP IRISおよびURIは、非ネイティブの界面とアプリケーションで使用するために定義されています。XMPPネットワークでの相互運用性を確保するために、データがXMPPエンティティにルーティングされる場合(たとえば、XMPPアドレスがXMLスタンザの「to」または '属性に含まれる場合)またはXMPPエンティティが標準で識別される場合(例:XMPPプロトコル要素、エンティティは、「ノード識別子」、「ドメイン識別子」、および「リソース識別子」部分が、<[node@] domain [/resource]>(つまり、準備されたスキームなし)としてアドレス指定する必要があります。XMPPアドレスは、[XMPP-Core]のセクション3で提供されている定義に準拠しています。

Note: For historical reasons, the term "resource identifier" is used in XMPP to refer to the optional portion of an XMPP address that follows the domain identifier and the "/" separator character (for details, refer to Section 3.4 of [XMPP-CORE]); this use of the term "resource identifier" is not to be confused with the meanings of "resource" and "identifier" provided in Section 1.1 of [URI].

注:歴史的な理由から、「リソース識別子」という用語は、XMPPで使用され、ドメイン識別子と「/」セパレーター文字に続くXMPPアドレスのオプション部分を参照します(詳細については、[XMPP-のセクション3.4を参照してください。芯]);「リソース識別子」という用語のこの使用は、[URI]のセクション1.1に記載されている「リソース」および「識別子」の意味と混同しないでください。

XMPP IRIs and URIs are defined primarily for the purpose of identification rather than of interaction (regarding this distinction, see Section 1.2.2 of [URI]). The "Internet resource" identified by an XMPP IRI or URI is an entity that can communicate via XMPP over a network. An XMPP IRI or URI can contain additional information above and beyond the identified resource; in particular, as described under Section 2.5 a query component can be included to specify suggested semantics for an interaction with the identified resource. It is envisioned that when an XMPP application resolves an XMPP IRI or URI containing suggested interaction semantics, the application will generate an XMPP stanza and send it to the identified resource, where the generated stanza may include user or application inputs that are consistent with the suggested interaction semantics (for details, see Section 2.8.1).

XMPP IRISとURIは、相互作用ではなく識別を目的として主に定義されています(この区別については、[URI]のセクション1.2.2を参照)。XMPP IRIまたはURIによって識別される「インターネットリソース」は、ネットワークを介してXMPPを介して通信できるエンティティです。XMPP IRIまたはURIには、特定されたリソースを超えて追加情報を含めることができます。特に、セクション2.5で説明したように、特定されたリソースとの相互作用のための提案されたセマンティクスを指定するためにクエリコンポーネントを含めることができます。XMPPアプリケーションがXMPP IRIまたはURIを含む提案された相互作用セマンティクスを解決すると、アプリケーションはXMPPスタンザを生成し、生成されたスタンザには、提案された提案と一致するユーザーまたはアプリケーション入力が含まれる可能性がある特定のリソースに送信することを想定しています。相互作用セマンティクス(詳細については、セクション2.8.1を参照)。

2.2. Form
2.2. 形状

As described in [XMPP-CORE], an XMPP address used natively on an XMPP network is a string of Unicode characters that (1) conforms to a certain set of stringprep [STRINGPREP] profiles and IDNA restrictions [IDNA], (2) follows a certain set of syntax rules, and (3) is encoded as UTF-8 [UTF-8]. The form of such an address can be represented using Augmented Backus-Naur Form [ABNF] as:

[xmpp-core]で説明されているように、xmppネットワークでネイティブに使用されるxmppアドレスは、(1)stringprep [stringprep]プロファイルとidna制限の特定のセットに準拠しているユニコード文字の文字列です。特定の一連の構文ルール、および(3)はUTF-8 [UTF-8]としてエンコードされています。このようなアドレスの形式は、次のように拡張されたバックスノーフォーム[abnf]を使用して表現できます。

[ node "@" ] domain [ "/" resource ]

[node "@"]ドメイン["/"リソース]

In this context, the "node" and "resource" rules rely on distinct profiles of stringprep [STRINGPREP], and the "domain" rule relies on the concept of an internationalized domain name as described in [IDNA]. (Note: There is no need to refer to punycode in the IRI syntax itself, since any punycode representation would occur only inside an XMPP application in order to represent internationalized domain names. However, it is the responsibility of the processing application to convert IRI syntax [IRI] into IDNA syntax [IDNA] before addressing XML stanzas to the specified entity on an XMPP network.)

これに関連して、「ノード」と「リソース」ルールは、stringprep [stringprep]の個別のプロファイルに依存しており、[ドメイン]ルールは[idna]に記載されているように、国際化ドメイン名の概念に依存しています。(注:IRI構文自体のPunycodeを参照する必要はありません。なぜなら、Punycode表現は国際的なドメイン名を表すためにXMPPアプリケーション内でのみ発生するためです。ただし、IRI構文を変換することは処理アプリケーションの責任です。[IRI] XMPPネットワーク上の指定されたエンティティにXMLスタンザを扱う前に、IDNA Syntax [IDNA]にIDNA構文[IDNA]に入ります。)

Certain characters are allowed in XMPP node identifiers and XMPP resource identifiers but not in the relevant portion of an IRI or URI. The characters are as follows:

特定の文字は、XMPPノード識別子とXMPPリソース識別子で許可されていますが、IRIまたはURIの関連部分では許可されていません。文字は次のとおりです。

   In node identifiers:  [ \ ] ^ ` { | }
        
   In resource identifiers:  " < > [ \ ] ^ ` { | }
        

The node identifier characters are not allowed in userinfo by the sub-delims rule and the resource identifier characters are not allowed in segment by the pchar rule. These characters MUST be percent-encoded when transforming an XMPP address into an XMPP IRI or URI.

sub-delimsルールによってuserinfoでノード識別子文字は許可されておらず、リソース識別子文字はPCHARルールによってセグメントで許可されていません。これらの文字は、XMPPアドレスをXMPP IRIまたはURIに変換する場合、パーセントエンコードする必要があります。

Naturally, in order to be converted into an IRI or URI, an XMPP address must be prepended with a scheme (specifically, the xmpp scheme) and may also need to undergo transformations that adhere to the rules defined in [IRI] and [URI]. Furthermore, in order to enable more advanced interaction with an XMPP entity rather than simple identification, it is desirable to take advantage of additional aspects of URI syntax and semantics, such as authority components, query components, and fragment identifier components.

当然のことながら、IRIまたはURIに変換するには、XMPPアドレスにスキーム(具体的にはXMPPスキーム)で準備され、[IRI]および[URI]で定義されているルールに付着する変換を受ける必要がある場合があります。。さらに、単純な識別ではなくXMPPエンティティとのより高度な相互作用を可能にするために、URI構文の追加側面と、権限コンポーネント、クエリコンポーネント、フラグメント識別子コンポーネントなどのセマンティクスを利用することが望ましいです。

Therefore, the ABNF syntax for an XMPP IRI is defined as shown below using Augmented Backus-Naur Form specified by [ABNF], where the "ifragment", "ihost", and "iunreserved" rules are defined in [IRI] and the "pct-encoded" rule is defined in [URI]:

したがって、XMPP IRIのABNF構文は、[ABNF]によって指定された拡張されたバックスNAUR形式を使用して以下に示すように定義されます。ここで、「IFRAGMENT」、「IHOST」、および「iUnReserved」ルールは[IRI]および「iOnReserved」ルールが定義されています。PCTエンコード "ルールは[uri]で定義されています。

     xmppiri    = "xmpp" ":" ihierxmpp
                  [ "?" iquerycomp ]
                  [ "#" ifragment ]
     ihierxmpp  = iauthpath / ipathxmpp
     iauthpath  = "//" iauthxmpp [ "/" ipathxmpp ]
     iauthxmpp  = inodeid "@" ihost
     ipathxmpp  = [ inodeid "@" ] ihost [ "/" iresid ]
     inodeid    = *( iunreserved / pct-encoded / nodeallow )
     nodeallow  = "!" / "$" / "(" / ")" / "*" / "+" / "," / ";" / "="
     iresid     = *( iunreserved / pct-encoded / resallow )
     resallow   = "!" / "$" / "&" / "'" / "(" / ")" /
                  "*" / "+" / "," / ":" / ";" / "="
     iquerycomp = iquerytype [ *ipair ]
     iquerytype = *iunreserved
     ipair      = ";" ikey "=" ivalue
     ikey       = *iunreserved
     ivalue     = *( iunreserved / pct-encoded )
        

However, the foregoing syntax is not appropriate for inclusion in the registration of the xmpp URI scheme, since the IANA recognizes only URI schemes and not IRI schemes. Therefore, the ABNF syntax for an XMPP URI rather than for IRI is defined as shown in Section 3.3 of this document. If it is necessary to convert the IRI syntax into URI syntax, an application MUST adhere to the mapping procedure specified in Section 3.1 of [IRI].

ただし、IANAはIRIスキームではなくURIスキームのみを認識しているため、前述の構文はXMPP URIスキームの登録に含めるのに適していません。したがって、IRIではなくXMPP URIのABNF構文は、このドキュメントのセクション3.3に示すように定義されています。IRI構文をURI構文に変換する必要がある場合、アプリケーションは[IRI]のセクション3.1で指定されたマッピング手順に付着する必要があります。

The following is an example of a basic XMPP IRI/URI used for purposes of identifying a node associated with an XMPP server:

以下は、XMPPサーバーに関連付けられているノードを識別するために使用される基本的なXMPP IRI/URIの例です。

xmpp:node@example.com

XMPP:node@example.com

Descriptions of the various components of an XMPP IRI/URI are provided in the following sections.

XMPP IRI/URIのさまざまなコンポーネントの説明は、次のセクションに記載されています。

2.3. Authority Component
2.3. 権限コンポーネント

As explained in Section 2.8 of this document, in the absence of an authority component, the processing application would authenticate as a configured user at a configured XMPP server. That is, the authority component section is unnecessary and should be ignored if the processing application has been configured with a set of default credentials.

このドキュメントのセクション2.8で説明されているように、権限コンポーネントがない場合、処理アプリケーションは構成されたXMPPサーバーで構成されたユーザーとして認証されます。つまり、権限コンポーネントセクションは不要であり、処理アプリケーションがデフォルトの資格情報のセットで構成されている場合は無視する必要があります。

In accordance with Section 3.2 of RFC 3986 [URI], the authority component is preceded by a double slash ("//") and is terminated by the next slash ("/"), question mark ("?"), or number sign ("#") character, or by the end of the IRI/URI. As explained more fully in Section 2.8.1 of this document, the presence of an authority component signals the processing application to authenticate as the node@domain specified in the authority component rather than as a configured node@domain (see the Security Considerations section of this document regarding authentication). (While it is unlikely that the authority component will be included in most XMPP IRIs or URIs, the scheme allows for its inclusion, if appropriate.) Thus, the following XMPP IRI/URI indicates to authenticate as "guest@example.com":

RFC 3986 [URI]のセクション3.2に従って、権限コンポーネントの前にダブルスラッシュ( "//")が先行し、次のスラッシュ( "/")、質問マーク( "?")、または番号が終了します。Sign( "#")文字、またはIRI/URIの終わりまでに。このドキュメントのセクション2.8.1でより完全に説明されているように、権限コンポーネントの存在は、設定されたnode@ドメインとしてではなく、機関コンポーネントで指定されたノード@ドメインとして認証するための処理アプリケーションを信号します(セキュリティに関する考慮事項セクションセクションを参照してください。認証に関するこのドキュメント)。(当局コンポーネントがほとんどのXMPP IRISまたはURISに含まれる可能性は低いが、スキームは必要に応じてその包含を許可している。)したがって、以下のXMPP IRI/URIは「guest@example.com」として認証することを示している。

xmpp://guest@example.com

xmpp://guest@example.com

Note well that this is quite different from the following XMPP IRI/ URI, which identifies a node "guest@example.com" but does not signal the processing application to authenticate as that node:

これは、次のXMPP IRI/ URIとはまったく異なることに注意してください。これは、ノード「guest@example.com」を識別しますが、処理アプリケーションを信号してそのノードとして認証することはありません。

xmpp:guest@example.com

XMPP:guest@example.com

Similarly, using a possible query component of "?message" to trigger an interface for sending a message, the following XMPP IRI/URI signals the processing application to authenticate as "guest@example.com" and to send a message to "support@example.com":

同様に、「?メッセージ」の可能なクエリコンポーネントを使用してメッセージを送信するためのインターフェイスをトリガーすると、次のXMPP IRI/URIは処理アプリケーションを「guest@example.com」として認証し、「サポート@サポート@にメッセージを送信する」example.com ":

      xmpp://guest@example.com/support@example.com?message
        

By contrast, the following XMPP IRI/URI signals the processing application to authenticate as its configured default account and to send a message to "support@example.com":

対照的に、次のXMPP IRI/URIは、処理アプリケーションを信号して、設定されたデフォルトアカウントとして認証し、「support@example.com」にメッセージを送信します。

xmpp:support@example.com?message

XMPP:support@example.com?メッセージ

2.4. Path Component
2.4. パスコンポーネント

The path component of an XMPP IRI/URI identifies an XMPP address or specifies the XMPP address to which an XML stanza shall be directed at the end of IRI/URI processing.

XMPP IRI/URIのパスコンポーネントは、XMPPアドレスを識別するか、XMLスタンザをIRI/URI処理の終わりに向けるXMPPアドレスを指定します。

For example, the following XMPP IRI/URI identifies a node associated with an XMPP server:

たとえば、次のXMPP IRI/URIは、XMPPサーバーに関連付けられたノードを識別します。

xmpp:example-node@example.com

XMPP:embles-node@example.com

The following XMPP IRI/URI identifies a node associated with an XMPP server along with a particular XMPP resource identifier associated with that node:

次のXMPP IRI/URIは、そのノードに関連付けられた特定のXMPPリソース識別子とともに、XMPPサーバーに関連付けられたノードを識別します。

xmpp:example-node@example.com/some-resource

XMPP:example-node@example.com/some-resource

Inclusion of a node is optional in XMPP addresses, so the following XMPP IRI/URI simply identifies an XMPP server:

XMPPアドレスでノードを含めることはオプションであるため、次のXMPP IRI/URIはXMPPサーバーを単純に識別します。

xmpp:example.com

XMPP:Example.com

2.5. Query Component
2.5. クエリコンポーネント

There are many potential use cases for encapsulating information in the query component of an XMPP IRI/URI for the purpose of specifying suggested interaction semantics (see Section 2.1); examples include, but are not limited to:

推奨される相互作用セマンティクスを指定する目的で、XMPP IRI/URIのクエリコンポーネントに情報をカプセル化するための多くの潜在的なユースケースがあります(セクション2.1を参照)。例には、以下が含まれますが、これらに限定されません。

o sending an XMPP message stanza (see [XMPP-IM]),

o

o adding a roster item (see [XMPP-IM]),

o 名簿項目を追加する([XMPP-IM]を参照)、

o sending a presence subscription (see [XMPP-IM]),

o プレゼンスサブスクリプションの送信([XMPP-IM]を参照)、

o probing for current presence information (see [XMPP-IM]),

o 現在の存在情報の調査([xmpp-im]を参照)、

o triggering a remote procedure call (see [XEP-0009]),

o リモートプロシージャコールのトリガー([XEP-0009]を参照)、

o discovering the identity or capabilities of another entity (see [XEP-0030]),

o 別のエンティティのアイデンティティまたは能力を発見する([xep-0030]を参照)、

o joining an XMPP-based text chat room (see [XEP-0045]),

o XMPPベースのテキストチャットルームに参加します([XEP-0045]を参照)、

o interacting with publish-subscribe channels (see [XEP-0060]),

o パブリッシュサブスクライブチャネルとの対話([xep-0060]を参照)、

o providing a SOAP interface (see [XEP-0072]), and

o 石鹸インターフェイスを提供する([xep-0072]を参照)、および

o registering with another entity (see [XEP-0077]).

o 別のエンティティに登録する([xep-0077]を参照)。

Many of these potential use cases are application specific, and the full range of such applications cannot be foreseen in advance given the continued expansion in XMPP development. However, there is agreement within the Jabber/XMPP developer community that all the uses envisioned to date can be encapsulated via a "query type", optionally supplemented by one or more "key-value" pairs (this is similar to the "application/x-www-form-urlencoded" MIME type described in [HTML]).

これらの潜在的なユースケースの多くはアプリケーション固有であり、XMPP開発の継続的な拡張を考えると、そのようなアプリケーションの全範囲を事前に予見することはできません。ただし、Jabber/XMPP開発者コミュニティ内では、これまでに想定されているすべての使用法を「クエリタイプ」でカプセル化できるという合意があります。x-www-form-urlencoded "mimeタイプ[html])。

As an example, an XMPP IRI/URI intended to launch an interface for sending a message to the XMPP entity "example-node@example.com" might be represented as follows:

例として、XMPPエンティティにメッセージを送信するためのインターフェイスを起動することを目的としたXMPP IRI/URIは、次のように表される場合があります。

xmpp:example-node@example.com?message

xmpp:seample-node@example.com?メッセージ

Similarly, an XMPP IRI/URI intended to launch an interface for sending a message to the XMPP entity "example-node@example.com" with a particular subject might be represented as follows:

同様に、特定の主題を使用してXMPPエンティティ「Example-node@example.com」にメッセージを送信するためのインターフェイスを起動することを目的としたXMPP IRI/URIは、次のように表される場合があります。

      xmpp:example-node@example.com?message;subject=Hello%20World
        

If the processing application does not understand query components or the specified query type, it MUST ignore the query component and treat the IRI/URI as consisting of, for example, <xmpp:example-node@example.com> rather than <xmpp:example-node@example.com?query>. If the processing application does not understand a particular key within the query component, it MUST ignore that key and its associated value.

処理アプリケーションがクエリコンポーネントまたは指定されたクエリタイプを理解していない場合、クエリコンポーネントを無視し、IRI/URIを、たとえば、<xmpp:Example-node@example.com> <xmpp:で構成されるものとして扱う必要があります。Example-node@example.com?Query>。処理アプリケーションがクエリコンポーネント内の特定のキーを理解していない場合、そのキーとそれに関連する値を無視する必要があります。

As noted, there exist many kinds of XMPP applications (both actual and potential), and such applications may define query types and keys for use in the query component portion of XMPP URIs. The XMPP Registrar function (see [XEP-0053]) of the XMPP Standards Foundation maintains a registry of such query types and keys at <http://www.xmpp.org/registrar/querytypes.html>. To help ensure interoperability, any application using the formats defined in this document SHOULD submit any associated query types and keys to that registry in accordance with the procedures specified in [XEP-0147].

前述のように、多くの種類のXMPPアプリケーション(実際のおよび電位の両方)が存在し、そのようなアプリケーションは、XMPP URIのクエリコンポーネント部分で使用するクエリタイプとキーを定義する場合があります。XMPP Standards FoundationのXMPPレジストラ機能([XEP-0053]を参照)は、<http://www.xmpp.org/registrar/querytypes.html>のこのようなクエリタイプとキーのレジストリを維持しています。相互運用性を確保するために、[XEP-0147]で指定された手順に従って、このドキュメントで定義されている形式を使用して、関連するクエリタイプとキーをそのレジストリに送信する必要があります。

Note: The delimiter between key-value pairs is the ";" character instead of the "&" character used in many other URI schemes. This delimiter was chosen in order to avoid problems with escaping of the & character in HTML and XML applications.

注:キー値のペア間の区切り文字は「;」です。他の多くのURIスキームで使用される「&」文字の代わりにキャラクター。この区切り文字は、HTMLおよびXMLアプリケーションの&キャラクターの脱出の問題を回避するために選択されました。

2.6. Fragment Identifier Component
2.6. フラグメント識別子コンポーネント

As stated in Section 3.5 of [URI], "The fragment identifier component of a URI allows indirect identification of a secondary resource by reference to a primary resource and additional identifying information." Because the resource identified by an XMPP IRI/URI does not make available any media type (see [MIME]) and therefore (in the terminology of [URI]) no representation exists at an XMPP resource, the semantics of the fragment identifier component in XMPP IRIs/URIs are to be "considered unknown and, effectively, unconstrained" (ibid.). Particular XMPP applications MAY make use of the fragment identifier component for their own purposes. However, if a processing application does not understand fragment identifier components or the syntax of a particular fragment identifier component included in an XMPP IRI/URI, it MUST ignore the fragment identifier component.

[URI]のセクション3.5で述べたように、「URIのフラグメント識別子コンポーネントは、主要なリソースと追加の識別情報を参照することにより、二次リソースの間接的な識別を可能にします。」XMPP IRI/URIによって識別されたリソースは、メディアタイプ([mime]を参照)を利用できないため、([uri]の用語で)XMPPリソースには表現が存在しないため、フラグメント識別子コンポーネントのセマンティクスは存在しません。XMPP IRIS/URIは、「不明であり、効果的には制約のない」と見なされるべきです(同上)。特定のXMPPアプリケーションは、独自の目的のためにフラグメント識別子コンポーネントを使用する場合があります。ただし、処理アプリケーションがフラグメント識別子コンポーネントまたはXMPP IRI/URIに含まれる特定のフラグメント識別子コンポーネントの構文を理解していない場合、フラグメント識別子コンポーネントを無視する必要があります。

2.7. Generation of XMPP IRIs/URIs
2.7. XMPP IRIS/URISの生成
2.7.1. Generation Method
2.7.1. 生成方法

In order to form an XMPP IRI from an XMPP node identifier, domain identifier, and resource identifier, the generating application MUST first ensure that the XMPP address conforms to the rules specified in [XMPP-CORE], including encoding as a UTF-8 [UTF-8] string and application of the relevant stringprep profiles [STRINGPREP]. Because IRI syntax [IRI] specifies that the characters in an IRI are the original Unicode characters themselves [UNICODE], when generating an XMPP IRI the generating application MUST then decode the UTF-8 [UTF-8] characters of a native XMPP address to their original Unicode form. The generating application then MUST concatenate the following:

XMPPノード識別子、ドメイン識別子、およびリソース識別子からXMPP IRIを形成するために、生成アプリケーションは、XMPPアドレスがUTF-8としてのエンコードを含む[XMPP-Core]で指定されたルールに準拠することを保証する必要があります[UTF-8]関連するStringPrepプロファイルの文字列とアプリケーション[StringPrep]。IRI構文[IRI]は、IRIの文字が元のUnicode文字自体[Unicode]であることを指定しているため、XMPP IRIを生成するときに生成アプリケーションは、ネイティブXMPPアドレスのUTF-8 [UTF-8]文字をデコードする必要があります。元のUnicodeフォーム。生成アプリケーションは、次のように連結する必要があります。

1. The "xmpp" scheme and the ":" character.

1. 「XMPP」スキームと「:」文字。

2. Optionally (if an authority component is to be included before the node identifier), the characters "//", an authority component of the form node@domain, and the character "/".

2. オプションで(機関コンポーネントをノード識別子の前に含める場合)、文字 "//"、フォームnode@domainの機関コンポーネント、および文字 "/"。

3. Optionally (if the XMPP address contained an XMPP "node identifier"), a string of Unicode characters that conforms to the "inodeid" rule, followed by the "@" character.

3. オプションで(XMPPアドレスにXMPP「ノード識別子」が含まれていた場合)、「inodeid」ルールに準拠し、「@」文字が続くユニコード文字の文字列。

4. A string of Unicode characters that conforms to the "ihost" rule.

4. 「ihost」ルールに準拠するユニコード文字の文字列。

5. Optionally (if the XMPP address contained an XMPP "resource identifier"), the character "/" and a string of Unicode characters that conforms to the "iresid" rule.

5. オプションで(XMPPアドレスにXMPP「リソース識別子」が含まれている場合)、文字「/」、および「IRESID」ルールに準拠するユニコード文字の文字列。

6. Optionally (if a query component is to be included), the "?" character and query component.

6. オプションで(クエリコンポーネントを含める場合)、「?」文字およびクエリコンポーネント。

7. Optionally (if a fragment identifier component is to be included), the "#" character and fragment identifier component.

7. オプションで(フラグメント識別子コンポーネントを含める場合)、「#」文字とフラグメント識別子コンポーネント。

In order to form an XMPP URI from the resulting IRI, an application MUST adhere to the mapping procedure specified in Section 3.1 of [IRI].

結果のIRIからXMPP URIを形成するには、[IRI]のセクション3.1で指定されたマッピング手順にアプリケーションを遵守する必要があります。

2.7.2. Generation Notes
2.7.2. 世代ノート

Certain characters are allowed in the node identifier, domain identifier, and resource identifier portions of a native XMPP address but prohibited by the "inodeid", "ihost", and "iresid" rules of an XMPP IRI. Specifically, the "#" and "?" characters are allowed in node identifiers, and the "/", "?", "#", and "@" characters are allowed in resource identifiers, but these characters are used as delimiters in XMPP IRIs. In addition, the " " ([US-ASCII] space) character is allowed in resource identifiers but prohibited in IRIs. Therefore, all the foregoing characters MUST be percent-encoded when transforming an XMPP address into an XMPP IRI.

特定の文字は、ネイティブXMPPアドレスのノード識別子、ドメイン識別子、およびリソース識別子部分で許可されていますが、XMPP IRIの「inodeid」、「ihost」、および「Iresid」ルールで禁止されています。具体的には、「#」と「?」文字はノード識別子で許可され、「/」、「」、「」、「#」、および「@」文字はリソース識別子で許可されますが、これらの文字はXMPPアイリスの区切り文字として使用されます。さらに、「[[us-ascii]スペース)文字はリソース識別子で許可されていますが、虹彩では禁止されています。したがって、XMPPアドレスをXMPP IRIに変換する場合、すべての前述の文字はパーセントエンコードする必要があります。

Consider the following nasty node in an XMPP address:

XMPPアドレスの次の厄介なノードを考えてみましょう。

      nasty!#$%()*+,-.;=?[\]^_`{|}~node@example.com
        

That address would be transformed into the following XMPP IRI (split into two lines for layout purposes):

そのアドレスは、次のXMPP IRIに変換されます(レイアウト目的で2行に分割されます)。

      xmpp:nasty!%23$%25()*+,-.;=%3F%5B%5C%5D%5E_%60%7B%7C%7D~node
      @example.com
        

Consider the following repulsive resource in an XMPP address (split into two lines for layout purposes):

XMPPアドレスの次の反発リソースを検討してください(レイアウト目的で2行に分割)。

      node@example.com
      /repulsive !#"$%&'()*+,-./:;<=>?@[\]^_`{|}~resource
        

That address would be transformed into the following XMPP IRI (split into three lines for layout purposes):

そのアドレスは、次のXMPP IRIに変換されます(レイアウト目的で3行に分割されます)。

      xmpp:node@example.com
      /repulsive%20!%23%22$%25&'()*+,-.%2F:;%3C=
      %3E%3F%40%5B%5C%5D%5E_%60%7B%7C%7D~resource
        

Furthermore, virtually any character outside the US-ASCII range [US-ASCII] is allowed in an XMPP address and therefore also in an XMPP IRI, but URI syntax forbids such characters directly and specifies that such characters MUST be percent-encoded. In order to determine the URI associated with an XMPP IRI, an application MUST adhere to the mapping procedure specified in Section 3.1 of [IRI].

さらに、米国ASCII範囲外のほとんどすべての文字[US-ASCII]はXMPPアドレスで許可されているため、XMPP IRIでも許可されていますが、URI構文はそのような文字を直接禁止し、そのような文字がパーセントエンコードされている必要があることを指定します。XMPP IRIに関連付けられたURIを決定するには、[IRI]のセクション3.1で指定されたマッピング手順に順守する必要があります。

The following table may assist implementors in understanding the respective encodings and "carrier units" of the identifiers discussed in this document, namely: (1) native XMPP addresses, (2) IRIs, and (3) URIs. For details, refer to Section 3.5 of this document as well as Section 3 of [XMPP-CORE], Section 6.4 of [IRI], and Section 2 of [URI].

次の表は、このドキュメントで説明されている識別子のそれぞれのエンコーディングと「キャリアユニット」、つまり(1)ネイティブXMPPアドレス、(2)IRIS、および(3)URISを理解するのを支援する場合があります。詳細については、このドキュメントのセクション3.5と[XMPP-CORE]のセクション3、[IRI]のセクション6.4、および[URI]のセクション2を参照してください。

   +--------------+-----------+-----------+
   | Identifier   | Encoding  | Units     |
   +--------------+-----------+-----------+
   | XMPP address | UTF-8     | Octets    |
   +--------------+-----------+-----------+
   | IRI          | Unicode   | 16/32-bit |
   |              |           | values    |
   +--------------+-----------+-----------+
   | URI          | Percent-  | US-ASCII  |
   |              | encoded   |           |
   |              | UTF-8     |           |
   +--------------+-----------+-----------+
        
2.7.3. Generation Example
2.7.3. 生成の例

Consider the following XMPP address:

次のXMPPアドレスを検討してください。

         <ji&#x159;i@&#x10D;echy.example/v Praze>
        

Note: The string "&#x159;" stands for the Unicode character LATIN SMALL LETTER R WITH CARON, and the string "&#x10D;" stands for the Unicode character LATIN SMALL LETTER C WITH CARON. The "&#x..." form is used in this document as a notational device to represent Unicode characters, following the "XML Notation" used in [IRI] to represent characters that cannot be rendered in ASCII-only documents. An XMPP IRI MUST contain the Unicode characters themselves, not the representation in XML Notation (in particular, note that the "#" character is forbidden in IRI syntax). An XMPP URI MUST properly escape such characters, as described below. The '<' and '>' characters are not part of the address itself but are provided to set off the address for legibility. (For those who do not understand the Czech language, this example could be Anglicized as "george@czech-lands.example/In Prague".)

注:文字列「&#x159;」Unicodeキャラクターラテンの小さな文字rをキャロンと略、弦「&#x10d;」Caronを使用したUnicode文字ラテンスモールレターCの略です。「&#x ...」フォームは、このドキュメントでは、Ascii-onlyドキュメントでレンダリングできない文字を表すために[xml表記法]に従って、ユニコード文字を表す表記デバイスとして使用されます。XMPP IRIには、XML表記の表現ではなく、Unicode文字自体を含める必要があります(特に、「#」文字はIRI構文で禁止されていることに注意してください)。XMPP URIは、以下に説明するように、そのような文字を適切に逃れる必要があります。「<'および'> '文字はアドレス自体の一部ではありませんが、読みやすさのためにアドレスをオフにするために提供されます。(チェコ語を理解していない人のために、この例は「george@czech-lands.example/in prague」として英語化される可能性があります。)

In accordance with the process specified above, the generating application would do the following to generate a valid XMPP IRI from this address:

上記のプロセスに従って、生成アプリケーションは次のことを行い、このアドレスから有効なXMPP IRIを生成します。

1. Ensure that the XMPP address conforms to the rules specified in [XMPP-CORE], including application of the relevant stringprep profiles [STRINGPREP] and encoding as a UTF-8 string [UTF-8].

1. XMPPアドレスが[XMPP-Core]で指定されたルールに準拠していることを確認し、関連するStringPrepプロファイル[StringPrep]の適用やUTF-8文字列[UTF-8]としてエンコードします。

2. Concatenate the following:

2. 以下を連結してください。

1. The "xmpp" scheme and the ":" character.

1. 「XMPP」スキームと「:」文字。

2. An "authority component" if included (not shown in this example).

2. 含まれている場合は「権限コンポーネント」(この例には示されていません)。

3. A string of Unicode characters that represents the XMPP address, transformed in accordance with the "inodeid", "ihost", and "iresid" rules.

3. 「inodeid」、「ihost」、および「iresid」ルールに従って変換されたXMPPアドレスを表す一連のユニコード文字。

4. The "?" character followed by a "query component" if appropriate to the application (not shown in this example).

4. 「?」文字に続いて、アプリケーションに必要な場合は「クエリコンポーネント」が続きます(この例には示されていません)。

5. The "#" character followed by a "fragment identifier component" if appropriate to the application (not shown in this example).

5. 「#」文字に続いて、アプリケーションに必要な場合は「フラグメント識別子コンポーネント」が続きます(この例には示されていません)。

The result is the following XMPP IRI (note again that, in accordance with the "XML Notation" used in [IRI], the string "&#x159;" stands for the Unicode character LATIN SMALL LETTER R WITH CARON and the string "&#x10D;" stands for the Unicode character LATIN SMALL LETTER C WITH CARON; an XMPP IRI would contain the Unicode characters themselves).

その結果、次のXMPP IRIがあります([IRI]で使用されている「XML表記」に従って、文字列「&#x159;」は、CaronとStringを使用したUnicode文字Latin Small Retter Rを表しています。#x10D; "は、caronを使用したユニコード文字ラテンの小さな文字cを表します。XMPP IRIには、ユニコード文字自体が含まれます)。

       <xmpp:ji&#x159;i@&#x10D;echy.example/v%20Praze>
        

In order to generate a valid XMPP URI from the foregoing IRI, the application MUST adhere to the procedure specified in Section 3.1 of [IRI], resulting in the following URI:

前述のIRIから有効なXMPP URIを生成するには、[IRI]のセクション3.1で指定された手順に順守する必要があります。

       <xmpp:ji%C5%99i@%C4%8Dechy.example/v%20Praze>
        
2.8. Processing of XMPP IRIs/URIs
2.8. XMPP IRIS/URISの処理
2.8.1. Processing Method
2.8.1. 処理方法

If a processing application is presented with an XMPP URI and not with an XMPP IRI, it MUST first convert the URI into an IRI by following the procedure specified in Section 3.2 of [IRI].

処理アプリケーションがXMPP URIでXMPP IRIではなく表示されている場合、[IRI]のセクション3.2で指定された手順に従って、最初にURIをIRIに変換する必要があります。

In order to decompose an XMPP IRI for interaction with the entity it identifies, a processing application MUST separate:

識別するエンティティとの相互作用のためにXMPP IRIを分解するには、処理アプリケーションが分離する必要があります。

1. The "xmpp" scheme and the ":" character.

1. 「XMPP」スキームと「:」文字。

2. The authority component, if included (the string of Unicode characters between the "//" characters and the next "/" character, the "?" character, the "#" character, or the end of the IRI).

2. 権限コンポーネント(含まれている場合)(「//」文字と次の "/「文字、「?」文字、「#」文字、またはIRIの終わりの間のユニコード文字の文字列)。

3. A string of Unicode characters that represents an XMPP address as transformed in accordance with the "inodeid", "ihost", and "iresid" rules.

3. 「inodeid」、「ihost」、および「iresid」ルールに従って変換されるXMPPアドレスを表す一連のユニコード文字。

4. Optionally the query component, if included, using the "?" character as a separator.

4. オプションでは、「?」を使用して、含まれている場合はクエリコンポーネントが含まれています。セパレーターとしてのキャラクター。

5. Optionally the fragment identifier component, if included, using the "#" character as a separator.

5. オプションで、「#」文字をセパレーターとして使用して、fragment識別子コンポーネントを含めています。

At this point, the processing application MUST ensure that the resulting XMPP address conforms to the rules specified in [XMPP-CORE], including application of the relevant stringprep profiles [STRINGPREP]. The processing application then would either (1) complete further XMPP handling itself or (2) invoke a helper application to complete XMPP handling; such XMPP handling would most likely consist of the following steps:

この時点で、処理アプリケーションは、結果のXMPPアドレスが、関連するStringPrepプロファイル[StringPrep]の適用を含む[XMPP-Core]で指定されたルールに準拠していることを確認する必要があります。処理アプリケーションは、(1)さらにXMPPの処理を完了するか、(2)ヘルパーアプリケーションを呼び出してXMPP処理を完了します。このようなXMPP処理は、おそらく次の手順で構成されます。

1. If not already connected to an XMPP server, connect either as the user specified in the authority component or as the configured user at the configured XMPP server, normally by adhering to the XMPP connection procedures defined in [XMPP-CORE]. (Note: The processing application SHOULD ignore the authority component if it has been configured with a set of default credentials.)

1. XMPPサーバーにまだ接続されていない場合は、[XMPP-Core]で定義されたXMPP接続手順を順守することにより、Authorityコンポーネントで指定されたユーザーとして、または構成されたXMPPサーバーで構成されたユーザーとして接続します。(注:処理アプリケーションは、デフォルトの資格情報のセットで構成されている場合、機関コンポーネントを無視する必要があります。)

2. Optionally, determine the nature of the intended recipient (e.g., via [XEP-0030]).

2. オプションでは、意図した受信者の性質を決定します(たとえば、[xep-0030]経由)。

3. Optionally, present an appropriate interface to a user based on the nature of the intended recipient and/or the contents of the query component.

3. オプションでは、意図した受信者の性質および/またはクエリコンポーネントの内容に基づいて、ユーザーに適切なインターフェイスを提示します。

4. Generate an XMPP stanza that translates any user or application inputs into their corresponding XMPP equivalents.

4. ユーザーまたはアプリケーションの入力を対応するXMPP等価物に変換するXMPPスタンザを生成します。

5. Send the XMPP stanza via the authenticated server connection for delivery to the intended recipient.

5. 意図した受信者に配信するために、認証されたサーバー接続を介してXMPPスタンザを送信します。

2.8.2. Processing Notes
2.8.2. メモの処理

It may help implementors to note that the first two steps of "further XMPP handling", as described at the end of Section 2.8.1, are similar to HTTP authentication [HTTP-AUTH], while the next three steps are similar to the handling of mailto: URIs [MAILTO].

セクション2.8.1の最後で説明されているように、「さらにXMPP処理」の最初の2つのステップはHTTP認証[http-auth]に似ているのに対し、次の3つの手順はハンドリングに似ていることに注意するのに役立つ場合があります。mailto:uris [mailto]。

As noted in Section 2.7.2 of this document, certain characters are allowed in the node identifier, domain identifier, and resource identifier portions of a native XMPP address but prohibited by the "inodeid", "ihost", and "iresid" rules of an XMPP IRI. The percent-encoded octets corresponding to these characters in XMPP IRIs MUST be transformed into the characters allowed in XMPP addresses when processing an XMPP IRI for interaction with the represented XMPP entity.

このドキュメントのセクション2.7.2で述べたように、特定の文字は、ネイティブXMPPアドレスのノード識別子、ドメイン識別子、およびリソース識別子部分で許可されていますが、「inodeid」、「ihost」、および「iresid」ルールで禁止されています。XMPP IRI。XMPP IRIのこれらの文字に対応する割合でエンコードされたオクテットは、XMPP IRIを処理するときにXMPPアドレスで許可されている文字に変換する必要があります。

Consider the following nasty node in an XMPP IRI (split into two lines for layout purposes):

XMPP IRIの次の厄介なノード(レイアウト目的で2行に分割)を考えてください。

      xmpp:nasty!%23$%25()*+,-.;=%3F%5B%5C%5D%5E_%60%7B%7C%7D~node
      @example.com
        

That IRI would be transformed into the following XMPP address:

そのIRIは、次のXMPPアドレスに変換されます。

      nasty!#$%()*+,-.;=?[\]^_`{|}~node@example.com
        

Consider the following repulsive resource in an XMPP IRI (split into three lines for layout purposes):

XMPP IRIの次の反発リソースを検討してください(レイアウト目的で3行に分割)。

      xmpp:node@example.com
      /repulsive%20!%23%22$%25&'()*+,-.%2F:;%3C
      =%3E%3F%40%5B%5C%5D%5E_%60%7B%7C%7D~resource
        

That IRI would be transformed into the following XMPP address (split into two lines for layout purposes):

そのIRIは、次のXMPPアドレスに変換されます(レイアウト目的で2行に分割されます)。

      node@example.com
      /repulsive !#"$%&'()*+,-./:;<=>?@[\]^_`{|}~resource
        
2.8.3. Processing Example
2.8.3. 処理例

Consider the XMPP URI that resulted from the previous example (see Section 2.7.3):

       <xmpp:ji%C5%99i@%C4%8Dechy.example/v%20Praze>
        

In order to generate a valid XMPP IRI from that URI, the application MUST adhere to the procedure specified in Section 3.2 of [IRI], resulting in the following IRI:

そのURIから有効なXMPP IRIを生成するために、アプリケーションは[IRI]のセクション3.2で指定された手順を遵守する必要があり、次のIRIになります。

       <xmpp:ji&#x159;i@&#x10D;echy.example/v%20Praze>
        

In accordance with the process specified above, the processing application would remove the "xmpp" scheme and ":" character to extract the XMPP address from this XMPP IRI, converting any percent-encoded octets from the "inodeid", "ihost", and "iresid" rules into their character equivalents (e.g., "%20" into the space character).

上記のプロセスに従って、処理アプリケーションは「XMPP」スキームと「次のXMPPアドレスを抽出する「XMPP」スキームと「文字」を削除し、「InodeID」、「IHost」、および「Ihost」からエンコードされたオクテットを変換します。「IRESID」は、キャラクターに相当するものにルールします(たとえば、「%20」スペース文字に)。

The result is this XMPP address:

その結果、このXMPPアドレス:

       <ji&#x159;i@&#x10D;echy.example/v Praze>
        
2.9. Internationalization
2.9. 国際化

Because XMPP addresses are UTF-8 strings [UTF-8] and because octets outside the US-ASCII range [US-ASCII] within XMPP addresses can be easily converted to percent-encoded octets, XMPP addresses are designed to work well with Internationalized Resource Identifiers [IRI]. In particular, with the exceptions of stringprep verification, the conversion of syntax-relevant US-ASCII characters (e.g., "?"), and the conversion of percent-encoded octets from the "inodeid", "ihost", and "iresid" rules into their character equivalents (e.g., "%20" into the US-ASCII space character), an XMPP IRI can be constructed directly by prepending the "xmpp" scheme and ":" character to an XMPP address. Furthermore, an XMPP IRI can be converted into URI syntax by adhering to the procedure specified in Section 3.1 of [IRI], and an XMPP URI can be converted into IRI syntax by adhering to the procedure specified in Section 3.2 of [IRI], thus ensuring interoperability with applications that are able to process URIs but unable to process IRIs.

XMPPアドレスはUTF-8文字列[UTF-8]であり、XMPPアドレス内のUS-ASCII範囲[US-ASCII]の外側のオクテットは、エンコードされたオクテットに簡単に変換できるため、XMPPアドレスは国際化されたリソースでうまく機能するように設計されています。識別子[IRI]。特に、StringPrepの検証、構文関連のUS-ASCII文字の変換(例:「?」)、および「Inodeid」、「Ihost」、および「Iresid」からの割合でエンコードされたオクテットの変換は、キャラクターに相当するルール(たとえば、「%20」、US-ASCIIスペース文字へ)、XMPP IRIは、「XMPP」スキームと「:」を準備することで直接構築できます。さらに、XMPP IRIは、[IRI]のセクション3.1で指定された手順を順守することによりURI構文に変換でき、XMPP URIは[IRI]のセクション3.2で指定された手順に付着することによりIRI構文に変換できます。URIを処理できるが虹彩を処理できないアプリケーションとの相互運用性を確保します。

3. IANA Registration of xmpp URI Scheme
3. XMPP URIスキームのIANA登録

In accordance with [URI-SCHEMES], this section provides the information required to register the xmpp URI scheme.

[URI-Schemes]に従って、このセクションでは、XMPP URIスキームを登録するために必要な情報を提供します。

3.1. URI Scheme Name
3.1. URIスキーム名

xmpp

xmpp

3.2. Status
3.2. スターテス

permanent

永続

3.3. URI Scheme Syntax
3.3. URIスキーム構文

The syntax for an xmpp URI is defined below using Augmented Backus-Naur Form as specified by [ABNF], where the "fragment", "host", "pct-encoded", and "unreserved" rules are defined in [URI]:

XMPP URIの構文は、[abnf]で指定されている拡張されたバックスノール形式を使用して以下に定義されます。ここで、「フラグメント」、「ホスト」、「PCTエンコード」、および「非予定」ルールは[uri]で定義されています。

     xmppuri   = "xmpp" ":" hierxmpp [ "?" querycomp ] [ "#" fragment ]
     hierxmpp  = authpath / pathxmpp
     authpath  = "//" authxmpp [ "/" pathxmpp ]
     authxmpp  = nodeid "@" host
     pathxmpp  = [ nodeid "@" ] host [ "/" resid ]
     nodeid    = *( unreserved / pct-encoded / nodeallow )
     nodeallow = "!" / "$" / "(" / ")" / "*" / "+" / "," / ";" / "="
     resid     = *( unreserved / pct-encoded / resallow )
     resallow  = "!" / "$" / "&" / "'" / "(" / ")" /
                  "*" / "+" / "," / ":" / ";" / "="
     querycomp = querytype [ *pair ]
     querytype = *( unreserved / pct-encoded )
     pair      = ";" key "=" value
     key       = *( unreserved / pct-encoded )
     value     = *( unreserved / pct-encoded )
        
3.4. URI Scheme Semantics
3.4. URIスキームセマンティクス

The xmpp URI scheme identifies entities that natively communicate using the Extensible Messaging and Presence Protocol (XMPP), and is mainly used for identification rather than for resource location. However, if an application that processes an xmpp URI enables interaction with the XMPP address identified by the URI, it MUST follow the methodology defined in Section 2 of this document, Use of XMPP IRIs and URIs, to reconstruct the encapsulated XMPP address, connect to an appropriate XMPP server, and send an appropriate XMPP "stanza" (XML fragment) to the XMPP address. (Note: There is no MIME type associated with the xmpp URI scheme.)

XMPP URIスキームは、拡張可能なメッセージングおよびプレゼンスプロトコル(XMPP)を使用してネイティブに通信するエンティティを識別し、主にリソースの場所ではなく識別に使用されます。ただし、XMPP URIを処理するアプリケーションがURIによって識別されたXMPPアドレスとの相互作用を可能にする場合、このドキュメントのセクション2で定義されている方法論に従って、カプセル化されたXMPPアドレスを再構築し、接続して接続する必要があります。適切なXMPPサーバーで、適切なXMPP「スタンザ」(XMLフラグメント)をXMPPアドレスに送信します。(注:XMPP URIスキームに関連するMIMEタイプはありません。)

3.5. Encoding Considerations
3.5. 考慮事項のエンコード

In addition to XMPP URIs, there will also be XMPP Internationalized Resource Identifiers (IRIs). Prior to converting an Extensible Messaging and Presence Protocol (XMPP) address into an IRI (and in accordance with [XMPP-CORE]), the XMPP address must be represented as a string of UTF-8 characters [UTF-8] by the generating application (e.g., by transforming an application's internal representation of the address as a UTF-16 string into a UTF-8 string). Because IRI syntax [IRI] specifies that the characters in an IRI are the original Unicode characters themselves [UNICODE], when generating an XMPP IRI the generating application MUST decode the UTF-8 characters of a native XMPP address to their original Unicode form. Because URI syntax [URI] specifices that the characters in a URI are US-ASCII characters [US-ASCII] only, when generating an XMPP URI the generating application MUST escape the Unicode characters of an XMPP IRI to US-ASCII characters by adhering to the procedure specified in RFC 3987.

XMPP URISに加えて、XMPP国際化されたリソース識別子(IRIS)もあります。拡張可能なメッセージと存在プロトコル(XMPP)アドレスをIRI(および[XMPP-Core]に従って)に変換する前に、XMPPアドレスは、生成によりUTF-8文字の文字列[UTF-8]として表現する必要があります。アプリケーション(たとえば、アプリケーションのアドレスの内部表現をUTF-16文字列としてのUTF-8文字列に変換すること)。IRI構文[IRI]は、IRIの文字が元のUnicode文字自体[Unicode]であることを指定するため、XMPP IRIを生成するときに、生成アプリケーションは、ネイティブXMPPアドレスのUTF-8文字を元のUnicodeフォームにデコードする必要があります。URI構文[uri]特異的であるため、uriの文字はus-ascii文字[us-ascii]のみであるため、xmpp uriを生成する場合、生成アプリケーションはxmpp iriのユニコード文字をus-ascii文字に逃がす必要があります。RFC 3987で指定された手順。

3.6. Applications/Protocols That Use This URI Scheme Name
3.6. このURIスキーム名を使用するアプリケーション/プロトコル

The xmpp URI scheme is intended to be used by interfaces to an XMPP network from non-native user agents, such as web browsers, as well as by non-native applications that need to identify XMPP entities as full URIs or IRIs.

XMPP URIスキームは、XMPPエンティティをフルURIまたはIRIとして特定する必要がある非ネイティブユーザーエージェントのXMPPネットワークと、Webブラウザーなどの非ネイティブユーザーエージェントのXMPPネットワークに使用することを目的としています。

3.7. Interoperability Considerations
3.7. 相互運用性の考慮事項

There are no known interoperability concerns related to use of the xmpp URI scheme. In order to help ensure interoperability, the XMPP Registrar function of the XMPP Standards Foundation maintains a registry of query types and keys that can be used in the query components of XMPP URIs and IRIs, located at <http://www.xmpp.org/registrar/querytypes.html>.

XMPP URIスキームの使用に関連する既知の相互運用性の懸念はありません。相互運用性を確保するために、XMPP Standards FoundationのXMPPレジストラ機能は、<http://www.xmpp.orgにあるXMPP URISおよびIRISのクエリコンポーネントで使用できるクエリタイプとキーのレジストリを維持しています。/registrar/querytypes.html>。

3.8. Security Considerations
3.8. セキュリティに関する考慮事項

See Section 5 of this document, Security Considerations.

このドキュメント、セキュリティ上の考慮事項のセクション5を参照してください。

3.9. Contact
3.9. コンタクト
   Peter Saint-Andre [mailto:stpeter@jabber.org,
   xmpp:stpeter@jabber.org]
        
3.10. Author/Change Controller
3.10. 著者/変更コントローラー

This scheme is registered under the IETF tree. As such, the IETF maintains change control.

このスキームは、IETFツリーの下に登録されています。そのため、IETFは変更制御を維持します。

3.11. References
3.11. 参考文献

[XMPP-CORE]

[xmpp-core]

4. IANA Considerations
4. IANAの考慮事項

This document obsoletes the URI scheme registration created by RFC 4622. The registration template can be found in Section 3 of this document. In order to help ensure interoperability, the XMPP Registrar function of the XMPP Standards Foundation maintains a registry of query types and keys that can be used in the query components of XMPP URIs and IRIs, located at <http://www.xmpp.org/registrar/querytypes.html>.

このドキュメントは、RFC 4622によって作成されたURIスキーム登録を廃止します。登録テンプレートは、このドキュメントのセクション3に記載されています。相互運用性を確保するために、XMPP Standards FoundationのXMPPレジストラ機能は、<http://www.xmpp.orgにあるXMPP URISおよびIRISのクエリコンポーネントで使用できるクエリタイプとキーのレジストリを維持しています。/registrar/querytypes.html>。

5. Security Considerations
5. セキュリティに関する考慮事項

Providing an interface to XMPP services from non-native applications introduces new security concerns. The security considerations discussed in [IRI], [URI], and [XMPP-CORE] apply to XMPP IRIs, and the security considerations discussed in [URI] and [XMPP-CORE] apply to XMPP URIs. In accordance with Section 2.7 of [URI-SCHEMES] and Section 7 of [URI], particular security considerations are specified in the following sections.

非ネイティブアプリケーションからXMPPサービスにインターフェイスを提供すると、新しいセキュリティの懸念が導入されます。[IRI]、[URI]、および[XMPP-CORE]で議論されているセキュリティ上の考慮事項は、XMPP IRIに適用され、[URI]および[XMPP-CORE]で説明されているセキュリティ上の考慮事項はXMPP URIに適用されます。[uri-schemes]のセクション2.7および[uri]のセクション7に従って、特定のセキュリティ上の考慮事項を次のセクションで指定します。

5.1. Reliability and Consistency
5.1. 信頼性と一貫性

Given that XMPP addresses of the form node@domain.tld are typically created via registration at an XMPP server or provisioned by an administrator of such a server, it is possible that such addresses may also be unregistered or deprovisioned. Therefore, the XMPP IRI/ URI that identifies such an XMPP address may not reliably and consistently be associated with the same principal, account owner, application, or device.

フォームnode@domain.tldのXMPPアドレスが通常、XMPPサーバーでの登録を介して作成されるか、そのようなサーバーの管理者によってプロビジョニングされていることを考えると、そのようなアドレスも未登録または脱分布される可能性があります。したがって、このようなXMPPアドレスを識別するXMPP IRI/ URIは、同じプリンシパル、アカウント所有者、アプリケーション、またはデバイスに確実かつ一貫して関連付けられていない場合があります。

XMPP addresses of the form node@domain.tld/resource are typically even more ephemeral (since a given XMPP resource identifier is typically associated with a particular, temporary session of an XMPP client at an XMPP server). Therefore, the XMPP IRI/URI that identifies such an XMPP address probably will not reliably and consistently be associated with the same session. However, the procedures specified in Section 10 of [XMPP-CORE] effectively eliminate any potential confusion that might be introduced by the lack of reliability and consistency for the XMPP IRI/URI that identifies such an XMPP address.

フォームnode@domain.tld/ResourceのXMPPアドレスは、通常、さらにはかないものです(特定のXMPPリソース識別子は通常、XMPPサーバーでのXMPPクライアントの特定の一時セッションに関連付けられているため)。したがって、そのようなXMPPアドレスを識別するXMPP IRI/URIは、おそらく同じセッションに確実かつ一貫して関連付けられないでしょう。ただし、[XMPP-Core]のセクション10で指定された手順は、そのようなXMPPアドレスを識別するXMPP IRI/URIの信頼性と一貫性の欠如によって導入される可能性のある潜在的な混乱を効果的に排除します。

XMPP addresses of the form domain.tld are typically long-lived XMPP servers or associated services. Although naturally it is possible for server or service administrators to decommission the server or service at any time, typically the IRIs/URIs that identify such servers or services are the most reliable and consistent of XMPP IRIs/URIs.

フォームdomain.tldのXMPPアドレスは、通常、長寿命のXMPPサーバーまたは関連サービスです。当然のことながら、サーバーまたはサービス管理者はいつでもサーバーまたはサービスを廃止することができますが、通常、そのようなサーバーまたはサービスを特定するIRIS/URIは、XMPP IRIS/URIの最も信頼性が高く一貫しています。

XMPP addresses of the form domain.tld/resource are not yet common on XMPP networks; however, the reliability and consistency of XMPP IRIs/ URIs that identify such XMPP addresses would likely fall somewhere between those that identify XMPP addresses of the form domain.tld and those that identify XMPP addresses of the form node@domain.tld.

XMPPドメインのXMPPアドレスは、XMPPネットワークではまだ一般的ではありません。ただし、そのようなXMPPアドレスを識別するXMPP IRIS/ URIの信頼性と一貫性は、フォームdomain.tldのXMPPアドレスを識別するものと、フォームnode@domain.tldのXMPPアドレスを識別するXMPPアドレスを識別するものの間にどこかに落ちる可能性があります。

5.2. Malicious Construction
5.2. 悪意のある構造

Malicious construction of XMPP IRIs/URIs is made less likely by the prohibition on port numbers in XMPP IRIs/URIs (since port numbers are to be discovered using DNS SRV records [DNS-SRV], as specified in [XMPP-CORE]).

XMPP IRIS/URISの悪意のある構造は、XMPP IRIS/URISのポート番号の禁止により、[XMPP-Core]で指定されているDNS SRVレコード[DNS-SRV]を使用してポート番号が発見されるため)。

5.3. Back-End Transcoding
5.3. バックエンドトランスコーディング

Because the base XMPP protocol is designed to implement the exchange of messages and presence information and not the retrieval of files or invocation of similar system functions, it is deemed unlikely that the use of XMPP IRIs/URIs would result in harmful dereferencing. However, if an XMPP protocol extension defines methods for information retrieval, it MUST define appropriate controls over access to that information. In addition, XMPP servers SHOULD NOT natively parse XMPP IRIs/URIs but instead SHOULD accept only the XML wire protocol specified in [XMPP-CORE] and any desired extensions thereto.

ベースXMPPプロトコルは、ファイルの取得や同様のシステム関数の呼び出しではなく、メッセージと存在情報の交換を実装するように設計されているため、XMPP IRIS/URISの使用が有害な繰り返しにつながる可能性は低いとは考えられません。ただし、XMPPプロトコル拡張が情報検索の方法を定義する場合、その情報へのアクセスに対する適切な制御を定義する必要があります。さらに、XMPPサーバーは、XMPP IRIS/URISをネイティブに解析するのではなく、[XMPP-Core]で指定されたXMLワイヤプロトコルとその目的の拡張機能のみを受け入れる必要があります。

5.4. Sensitive Information
5.4. 機密情報

The ability to interact with XMPP entities via a web browser or other non-native application may expose sensitive information (such as support for particular XMPP application protocol extensions) and thereby make it possible to launch attacks that are not possible or that are unlikely on a native XMPP network. Due care must be taken in deciding what information is appropriate for representation in XMPP IRIs or URIs.

Webブラウザーまたはその他の非ネイティブアプリケーションを介してXMPPエンティティと対話する機能は、機密情報(特定のXMPPアプリケーションプロトコル拡張のサポートなど)を公開する可能性があり、それにより、不可能な攻撃を起動することができます。ネイティブXMPPネットワーク。XMPP IrisまたはURIの表現に適した情報を決定する際には、適切な注意が必要です。

In particular, advertising XMPP IRIs/URIs in publicly accessible locations (e.g., on websites) may make it easier for malicious users to harvest XMPP addresses from the authority and path components of XMPP IRIs/URIs and therefore to send unsolicited bulk communications to the users or applications represented by those addresses. Due care should be taken in balancing the benefits of open information exchange against the potential costs of unwanted communications.

特に、XMPP IRIS/URISを公開されている場所(例:Webサイト)に広告すると、悪意のあるユーザーがXMPP IRIS/URIの権限とパスコンポーネントからXMPPアドレスを収穫しやすくなり、したがって、ユーザーに未承諾のバルク通信を送信することができます。またはそれらのアドレスで表されるアプリケーション。不要なコミュニケーションの潜在的なコストとのオープン情報交換の利点のバランスをとることには、適切な注意が必要です。

To help prevent leaking of sensitive information, passwords and other user credentials are forbidden in the authority component of XMPP IRIs/URIs; in fact they are not needed, since the fact that authentication in XMPP occurs via the Simple Authentication and Security Layer [SASL] makes it possible to use the SASL ANONYMOUS mechanism, if desired.

機密情報の漏れを防ぐために、パスワードやその他のユーザー資格情報は、XMPP IRIS/URIの権限コンポーネントで禁止されています。実際、XMPPの認証が単純な認証とセキュリティレイヤー[SASL]を介して発生するという事実により、必要に応じてSASL匿名メカニズムを使用できるため、必要ではありません。

5.5. Semantic Attacks
5.5. セマンティック攻撃

Despite the existence of non-hierarchical URI schemes such as [MAILTO], by association human users may expect all URIs to include the "//" characters after the scheme name and ":" character. However, in XMPP IRIs/URIs, the "//" characters precede the authority component rather than the path component. Thus, xmpp://guest@example.com indicates to authenticate as "guest@example.com", whereas xmpp:guest@example.com identifies the node "guest@example.com". Processing applications MUST clearly differentiate between these forms, and user agents SHOULD discourage human users from including the "//" characters in XMPP IRIs/URIs since use of the authority component is envisioned to be helpful only in specialized scenarios, not more generally.

[mailto]などの非階層的なURIスキームの存在にもかかわらず、人間のユーザーは、すべてのURIがスキーム名の後に「//」文字を含めることと、「:」文字を含めることを期待するかもしれません。ただし、XMPP IRIS/URISでは、「//」文字はパスコンポーネントではなく、権限コンポーネントの前にあります。したがって、xmpp://guest@example.comは「guest@example.com」として認証することを示しますが、xmpp:guest@example.comはnode "guest@example.com"を識別します。処理アプリケーションはこれらのフォームを明確に区別する必要があり、ユーザーエージェントは、XMPP IRIS/URIに「//」文字が含まれることを思いとどまらせる必要があります。

5.6. Spoofing
5.6. スプーフィング

The ability to include effectively the full range of Unicode characters in an XMPP IRI may make it easier to execute certain forms of address mimicking (also called "spoofing"). However, XMPP IRIs are no different from other IRIs in this regard, and applications that will present XMPP IRIs to human users must adhere to best practices regarding address mimicking in order to help prevent attacks that result from spoofed addresses (e.g., the phenomenon known as "phishing"). For details, refer to the Security Considerations of [IRI].

XMPP IRIに全範囲のユニコード文字を効果的に含める機能により、特定の形式のアドレスを模倣することが容易になります(「スプーフィング」とも呼ばれます)。ただし、この点でXMPP Irisは他のIRISと違いはありません。また、人間のユーザーにXMPP IRIを提示するアプリケーションは、スプーフィングされたアドレス(例えば、呼び起こされたアドレスから生じる攻撃を防ぐために、住所に関するベストプラクティスを遵守する必要があります。「フィッシング」)。詳細については、[IRI]のセキュリティ上の考慮事項を参照してください。

6. Acknowledgements
6. 謝辞

Thanks to Martin Duerst, Lisa Dusseault, Frank Ellerman, Roy Fielding, Joe Hildebrand, and Ralph Meijer for their comments.

Martin Duerst、Lisa Dusseault、Frank Ellerman、Roy Fielding、Joe Hildebrand、Ralph Meijerのコメントに感謝します。

7. References
7. 参考文献
7.1. Normative References
7.1. 引用文献

[ABNF] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2007.

[ABNF] Crocker、D。およびP. Overell、「構文仕様のためのBNFの増強:ABNF:STD 68、RFC 5234、2007年1月。

[IRI] Duerst, M. and M. Suignard, "Internationalized Resource Identifiers (IRIs)", RFC 3987, January 2005.

[IRI] Duerst、M。およびM. Suignard、「国際化された資源識別子(IRIS)」、RFC 3987、2005年1月。

[TERMS] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[用語] Bradner、S。、「要件レベルを示すためにRFCで使用するためのキーワード」、BCP 14、RFC 2119、1997年3月。

[URI] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005.

[URI] Berners-Lee、T.、Fielding、R。、およびL. Masinter、「Uniform Resource Identifier(URI):Generic Syntax」、Std 66、RFC 3986、2005年1月。

[XMPP-CORE] Saint-Andre, P., "Extensible Messaging and Presence Protocol (XMPP): Core", RFC 3920, October 2004.

[XMPP-Core] Saint-Andre、P。、「拡張可能なメッセージと存在プロトコル(XMPP):Core」、RFC 3920、2004年10月。

7.2. Informative References
7.2. 参考引用

[CPIM] Peterson, J., "Common Profile for Instant Messaging (CPIM)", RFC 3860, August 2004.

[CPIM]ピーターソン、J。、「インスタントメッセージングの共通プロファイル(CPIM)」、RFC 3860、2004年8月。

[CPP] Peterson, J., "Common Profile for Presence (CPP)", RFC 3859, August 2004.

[CPP]ピーターソン、J。、「存在の共通プロファイル(CPP)」、RFC 3859、2004年8月。

[DNS-SRV] Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for specifying the location of services (DNS SRV)", RFC 2782, February 2000.

[DNS-SRV] Gulbrandsen、A.、Vixie、P。、およびL. Esibov、「サービスの場所を指定するためのDNS RR(DNS SRV)」、RFC 2782、2000年2月。

[HTML] Raggett, D., "HTML 4.0 Specification", W3C REC REC-html40-19980424, April 1998.

[HTML] Raggett、D。、「HTML 4.0仕様」、W3C Rec Rec-HTML40-19980424、1998年4月。

[HTTP-AUTH] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., Leach, P., Luotonen, A., and L. Stewart, "HTTP Authentication: Basic and Digest Access Authentication", RFC 2617, June 1999.

[HTTP-Auth] Franks、J.、Hallam-Baker、P.、Hostetler、J.、Lawrence、S.、Leach、P.、Luotonen、A。、およびL. Stewart、 "HTTP認証:基本および消化アクセス認証」、RFC 2617、1999年6月。

[IDNA] Faltstrom, P., Hoffman, P., and A. Costello, "Internationalizing Domain Names in Applications (IDNA)", RFC 3490, March 2003.

[IDNA] Faltstrom、P.、Hoffman、P.、およびA. Costello、「アプリケーションの国際化ドメイン名(IDNA)」、RFC 3490、2003年3月。

[MAILTO] Hoffman, P., Masinter, L., and J. Zawinski, "The mailto URL scheme", RFC 2368, July 1998.

[Mailto] Hoffman、P.、Masinter、L。、およびJ. Zawinski、「The Mailto URL Scheme」、RFC 2368、1998年7月。

[MIME] Freed, N. and N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types", RFC 2046, November 1996.

[Mime] Freed、N。およびN. Borenstein、「多目的インターネットメールエクステンション(MIME)パート2:メディアタイプ」、RFC 2046、1996年11月。

[SASL] Melnikov, A. and K. Zeilenga, "Simple Authentication and Security Layer (SASL)", RFC 4422, June 2006.

[SASL] Melnikov、A。およびK. Zeilenga、「Simple Authentication and Security Layer(SASL)」、RFC 4422、2006年6月。

[STRINGPREP] Hoffman, P. and M. Blanchet, "Preparation of Internationalized Strings ("STRINGPREP")", RFC 3454, December 2002.

[StringPrep] Hoffman、P。and M. Blanchet、「国際化された文字列の準備(「StringPrep」)」、RFC 3454、2002年12月。

[UNICODE] The Unicode Consortium, "The Unicode Standard, Version 3.2.0", 2000.

[Unicode] Unicode Consortium、「Unicode Standard、バージョン3.2.0」、2000。

The Unicode Standard, Version 3.2.0 is defined by The Unicode Standard, Version 3.0 (Reading, MA, Addison-Wesley, 2000. ISBN 0-201-61633-5), as amended by the Unicode Standard Annex #27: Unicode 3.1 (http://www.unicode.org/reports/tr27/) and by the Unicode Standard Annex #28: Unicode 3.2 (http://www.unicode.org/reports/tr28/).

Unicode標準バージョン3.2.0は、Unicode Standard Annex#27:Unicode 3.1によって修正されたように、Unicode標準バージョン3.0(リーディング、マサチューセッツ州、Addison-Wesley、2000。ISBN0-201-61633-5)で定義されています。(http://www.unicode.org/reports/tr27/)およびUnicode Standard Annex#28:Unicode 3.2(http://www.unicode.org/reports/tr28/)。

[URI-SCHEMES] Hansen, T., Hardie, T., and L. Masinter, "Guidelines and Registration Procedures for New URI Schemes", RFC 4395, February 2006.

[URI-Schemes] Hansen、T.、Hardie、T。、およびL. Masinter、「新しいURIスキームのガイドラインと登録手順」、RFC 4395、2006年2月。

[US-ASCII] American National Standards Institute, "Coded Character Set - 7-bit American Standard Code for Information Interchange", ANSI X3.4, 1986.

[US-ASCII] American National Standards Institute、「コード化された文字セット-7ビットの情報インターチェンジのためのアメリカ標準コード」、ANSI X3.4、1986。

[UTF-8] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, November 2003.

[UTF-8] Yergeau、F。、「UTF-8、ISO 10646の変換形式」、STD 63、RFC 3629、2003年11月。

[XEP-0009] Adams, D., "Jabber-RPC", XSF XEP 0009, February 2006.

[Xep-0009] Adams、D。、「Jabber-RPC」、XSF XEP 0009、2006年2月。

[XEP-0030] Hildebrand, J., Millard, P., Eatmon, R., and P. Saint-Andre, "Service Discovery", XSF XEP 0030, February 2007.

[Xep-0030] Hildebrand、J.、Millard、P.、Eatmon、R。、およびP. Saint-Andre、 "Service Discovery"、XSF XEP 0030、2007年2月。

[XEP-0045] Saint-Andre, P., "Multi-User Chat", XSF XEP 0045, April 2007.

[XEP-0045] Saint-Andre、P。、「Multi-User Chat」、XSF XEP 0045、2007年4月。

[XEP-0053] Saint-Andre, P., "XMPP Registrar Function", XSF XEP 0053, December 2006.

[XEP-0053] Saint-Andre、P。、「XMPP Registrar Function」、XSF XEP 0053、2006年12月。

[XEP-0060] Millard, P., Saint-Andre, P., and R. Meijer, "Publish-Subscribe", XSF XEP 0060, September 2006.

[Xep-0060] Millard、P.、Saint-Andre、P.、およびR. Meijer、「Publish-Subscribe」、XSF XEP 0060、2006年9月。

[XEP-0072] Forno, F. and P. Saint-Andre, "SOAP Over XMPP", XSF XEP 0072, December 2005.

[XEP-0072] Forno、F。およびP. Saint-Andre、「Soap Over XMPP」、XSF XEP 0072、2005年12月。

[XEP-0077] Saint-Andre, P., "In-Band Registration", XSF XEP 0077, January 2006.

[XEP-0077] Saint-Andre、P。、「In-Band Registration」、XSF XEP 0077、2006年1月。

[XEP-0147] Saint-Andre, P., "XMPP URI Scheme Query Components", XSF XEP 0147, September 2006.

[XEP-0147] Saint-Andre、P。、「XMPP URIスキームクエリコンポーネント」、XSF XEP 0147、2006年9月。

[XMPP-IM] Saint-Andre, P., "Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence", RFC 3921, October 2004.

[XMPP-IM] Saint-Andre、P。、「拡張可能なメッセージと存在プロトコル(XMPP):インスタントメッセージングと存在」、RFC 3921、2004年10月。

Appendix A. Differences from RFC 4622
付録A. RFC 4622との違い

Several errors were found in RFC 4622. This document corrects those errors. The resulting differences from RFC 4622 are as follows:

RFC 4622でいくつかのエラーが見つかりました。このドキュメントはこれらのエラーを修正します。RFC 4622との結果の違いは次のとおりです。

o Specified that the characters "[", "\", "]", "^", "`", "{", "|", and "}" are allowed in XMPP node identifiers but not allowed in IRIs or URIs according to the sub-delims rule.

o 文字「["" "\"、 "]、「^」、「^」、「`」、 "{"、 "|"、および "}"はXMPPノード識別子で許可されているが、虹彩またはurisでは許可されていないことを指定しました。サブデリムルールに。

o Specified that the characters '"', "<", ">", "[", "\", "]", "^", "`", "{", "|", and "}" are allowed in XMPP resource identifiers but not allowed in IRIs or URIs according to the pchar rule.

o キャラクターの "''、" <"、"> "、"、 "、" \ "、"]、 "^"、 "` "、{"、 "|"、 "}"が許可されていることを指定しましたXMPPリソース識別子では、PCHARルールに従ってIRISまたはURIで許可されていません。

o Specified that the foregoing characters must be percent-encoded when constructing an XMPP URI.

o XMPP URIを構築するときに、前述の文字をパーセントエンコードする必要があることを指定しました。

o Corrected the ABNF accordingly.

o それに応じてABNFを修正しました。

o Updated the examples accordingly.

o それに応じて例を更新しました。

Appendix B. Copying Conditions
付録B. コピー条件

Regarding this entire document or any portion of it, the author makes no guarantees and is not responsible for any damage resulting from its use. The author grants irrevocable permission to anyone to use, modify, and distribute it in any way that does not diminish the rights of anyone else to use, modify, and distribute it, provided that redistributed derivative works do not contain misleading author or version information. Derivative works need not be licensed under similar terms.

このドキュメント全体またはその一部に関して、著者は保証を行わず、その使用に起因する損害について責任を負いません。著者は、再配分されたデリバティブ作業に誤解を招く著者またはバージョン情報が含まれていない限り、他の人がそれを使用、変更、および配布する権利を減少させない方法で使用、変更、配布する人に取消不能の許可を与えます。デリバティブ作業は、同様の条件でライセンスされる必要はありません。

Author's Address

著者の連絡先

Peter Saint-Andre XMPP Standards Foundation

Peter Saint-Andre XMPP Standards Foundation

   EMail: stpeter@jabber.org
   URI:   xmpp:stpeter@jabber.org
        

Full Copyright Statement

完全な著作権声明

Copyright (C) The IETF Trust (2008).

著作権(c)The IETF Trust(2008)。

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

この文書は、BCP 78に含まれる権利、ライセンス、および制限の対象となり、そこに記載されている場合を除き、著者はすべての権利を保持しています。

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

このドキュメントとここに含まれる情報は、「現状のまま」に基づいて提供され、貢献者、彼/彼女が代表する組織(もしあれば)、インターネット協会、IETFトラスト、インターネットエンジニアリングタスクフォースがすべてを否認します。明示的または黙示的な保証。ここでの情報の使用は、特定の目的に対する商品性または適合性の権利または暗黙の保証を侵害しないという保証を含むがこれらに限定されない。

Intellectual Property

知的財産

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

IETFは、知的財産権またはその他の権利の有効性または範囲に関して、本書に記載されている技術の実装または使用、またはそのような権利に基づくライセンスに基づくライセンスの範囲に関連すると主張される可能性のある他の権利に関しては、立場を取得しません。利用可能になります。また、そのような権利を特定するために独立した努力をしたことも表明していません。RFCドキュメントの権利に関する手順に関する情報は、BCP 78およびBCP 79に記載されています。

Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

IETF事務局に行われたIPR開示のコピーと、利用可能にするライセンスの保証、またはこの仕様の実装者またはユーザーによるそのような独自の権利の使用のための一般的なライセンスまたは許可を取得するための試みの結果を取得できます。http://www.ietf.org/iprのIETFオンラインIPRリポジトリから。

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.

IETFは、関心のある当事者に、著作権、特許、または特許出願、またはこの基準を実装するために必要なテクノロジーをカバーする可能性のあるその他の独自の権利を注意深く招待します。ietf-ipr@ietf.orgのIETFへの情報をお問い合わせください。