Network Working Group K. Zeilenga, Ed. Request for Comments: 3866 OpenLDAP Foundation Obsoletes: 2596 July 2004 Category: Standards Track
Language Tags and Ranges in the Lightweight Directory Access Protocol (LDAP)
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)の最新版を参照してください。このメモの配布は無制限です。
Copyright Notice
著作権表示
Copyright (C) The Internet Society (2004).
著作権(C)インターネット協会(2004)。
Abstract
抽象
It is often desirable to be able to indicate the natural language associated with values held in a directory and to be able to query the directory for values which fulfill the user's language needs. This document details the use of Language Tags and Ranges in the Lightweight Directory Access Protocol (LDAP).
ディレクトリに保持されている値に関連した自然言語を示すことができるように、ユーザーの言語のニーズを満たす値のためのディレクトリを照会できるようにすることが望ましい場合が多いです。この文書では、言語タグの使用を詳述し、ライトウェイトディレクトリアクセスプロトコル(LDAP)の範囲です。
The Lightweight Directory Access Protocol (LDAP) [RFC3377] provides a means for clients to interrogate and modify information stored in a distributed directory system. The information in the directory is maintained as attributes of entries. Most of these attributes have syntaxes which are human-readable strings, and it is desirable to be able to indicate the natural language associated with attribute values.
ライトウェイトディレクトリアクセスプロトコル(LDAP)[RFC3377]は、分散ディレクトリシステムに格納されている情報を問い合わせると、修正するクライアントのための手段を提供します。ディレクトリ内の情報は、エントリの属性として維持されます。これらの属性のほとんどは、人間が読める文字列である構文を持っている、そして属性値に関連した自然言語を示すことができるようにすることが望ましいです。
This document describes how language tags and ranges [RFC3066] are carried in LDAP and are to be interpreted by LDAP implementations. All LDAP implementations MUST be prepared to accept language tags and ranges.
この文書では、言語タグと範囲[RFC3066]はLDAPで運ばれ、LDAPの実装によって解釈する方法について説明します。すべてのLDAP実装は、言語タグと範囲を受け入れるように準備しなければなりません。
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 BCP 14 [RFC2119].
この文書のキーワード "MUST"、 "MUST NOT"、 "REQUIRED"、、、、 "べきではない" "べきである" "ないもの" "ものとし"、 "推奨"、 "MAY"、および "OPTIONAL" はありますBCP 14 [RFC2119]に記載されているように解釈されます。
This document replaces RFC 2596. Appendix A summaries changes made since RFC 2596.
この文書は、RFC 2596.付録Aは、RFC 2596以降に行われた変更をサマリ置き換えます。
Appendix B discusses differences from X.500(1997) "contexts" mechanism.
付録Bは、X.500(1997)「文脈」のメカニズムとの違いについて説明します。
Appendix A and B are provided for informational purposes only.
付録AおよびBは、情報提供のみを目的に提供されています。
The remainder of this section provides a summary of Language Tags, Language Ranges, and Attribute Descriptions.
このセクションの残りの部分は、言語タグ、言語の範囲、および属性の説明の概要を提供します。
Section 2 of BCP 47 [RFC3066] describes the language tag format which is used in LDAP. Briefly, it is a string of [ASCII] letters and hyphens. Examples include "fr", "en-US" and "ja-JP". Language tags are case insensitive. That is, the language tag "en-us" is the same as "EN-US".
BCP 47 [RFC3066]のセクション2はLDAPで使用される言語タグ形式を記述する。簡単に言えば、それは[ASCII]文字とハイフンの文字列です。例としては、 "EN-US" "FR"、および "JA-JP" が挙げられます。言語タグは大文字と小文字を区別しません。それは「EN-US」言語タグは「EN-US」と同じである、です。
Section 2 of this document details use of language tags in LDAP.
このドキュメントの内容の第2節では、LDAPに言語タグを使用しています。
Section 2.5 of BCP 47 [RFC3066] describes the language ranges. Language ranges are used to specify sets of language tags.
BCP 47 [RFC3066]の2.5節には、言語の範囲を説明しています。言語の範囲は言語タグのセットを指定するために使用されています。
A language range matches a language tag if it is exactly equal to the tag, or if it is exactly equal to a prefix of the tag such that the first character following the prefix is "-". That is, the language range "de" matches the language tags "de" and "de-CH" but not "den". The special language range "*" matches all language tags.
それは、タグに正確に等しい場合、言語の範囲は、言語タグに一致する、またはそれが接頭辞に続く最初の文字があるように、タグの接頭辞と正確に一致している場合は「 - 」。つまり、言語の範囲は、「ドは、」言語タグ「デ」と「脱CH」ではなく「デン」と一致します。特殊な言語範囲「*」は、すべての言語タグに一致します。
Due to attribute description option naming restrictions in LDAP, this document defines a different language range syntax. However, the semantics of language ranges in LDAP are consistent with BCP 47.
LDAPでの命名規則の説明オプション属性のために、このドキュメントでは、異なる言語の範囲の構文を定義します。しかし、LDAPでの言語範囲の意味論は、BCP 47と一致しています。
Section 3 of this document details use of language ranges in LDAP.
詳細については、言語の使用このドキュメントのセクション3はLDAPの範囲です。
This section provides an overview of attribute descriptions in LDAP. LDAP attributes and attribute descriptions are defined in [RFC2251].
このセクションでは、LDAP内の属性の説明の概要を説明します。 LDAP属性と属性の説明は、[RFC2251]で定義されています。
An attribute consists of a type, a set of zero or more associated tagging options, and a set of one or more values. The type and the options are combined into the AttributeDescription.
属性は、タイプ、ゼロまたはそれ以上の関連するタグ付けオプションのセット、及び1つ以上の値の組から成ります。タイプとオプションは、のAttributeDescriptionに結合されます。
AttributeDescriptions can also contain options which are not part of the attribute, but indicate some other function (such as range assertion or transfer encoding).
AttributeDescriptionsはまた、属性の一部ではなく、(そのような範囲アサーションまたは転送符号化のような)いくつかの他の機能を示すオプションを含むことができます。
An AttributeDescription with one or more tagging options is a direct subtype of each AttributeDescription of the same type with all but one of the tagging options. If the AttributeDescription's type is a direct subtype of some other type, then the AttributeDescription is also a direct subtype of the AttributeDescription which consists of the supertype and all of the tagging options. That is, "CN;x-bar;x-foo" is a direct subtype of "CN;x-bar", "CN;x-foo", and "name;x-bar;x-foo". Note that "CN" is a subtype of "name".
一つ以上のタグ付けオプション付きのAttributeDescriptionは、タグ付けオプションのいずれかが、すべてと同じタイプのそれぞれのAttributeDescriptionの直接のサブタイプです。 AttributeDescriptionのタイプは、いくつかの他のタイプの直接のサブタイプである場合、のAttributeDescriptionもスーパータイプとタグ付けオプションのすべてで構成さのAttributeDescriptionの直接のサブタイプです。すなわち、 "CN; Xバー; X-FOO" があるの直接のサブタイプである "CN; X-BAR"、 "CN; X-FOO"、および "名前; Xバー; X-FOO"。 「CN」は「名前」のサブタイプであることに注意してください。
This section describes how LDAP implementations MUST interpret language tags in performing operations.
このセクションでは、LDAPの実装は操作を実行する際に言語タグを解釈しなければならない方法を説明します。
Servers which support storing attributes with language tag options in the Directory Information Tree (DIT) SHOULD allow any attribute type it recognizes that has the Directory String, IA5 String, or other textual string syntaxes to have language tag options associated with it. Servers MAY allow language options to be associated with other attributes types.
ディレクトリ情報ツリー(DIT)での言語タグオプションを使用して保存する属性をサポートするサーバーには、任意の属性は、それはそれはそれに関連付けられた言語タグオプションを持っているディレクトリ文字列、IA5文字列、またはその他のテキスト文字列の構文を持っている認識して入力できるようにすべきです。サーバは、言語のオプションが他の属性の種類に関連付けられていることを可能にすることができます。
Clients SHOULD NOT assume servers are capable of storing attributes with language tags in the directory.
クライアントは、サーバがディレクトリ内の言語タグと属性を格納することが可能であると仮定してはいけません。
Implementations MUST NOT otherwise interpret the structure of the tag when comparing two tags, and MUST treat them simply as strings of characters. Implementations MUST allow any arbitrary string which conforms to the syntax defined in BCP 47 [RFC3066] to be used as a language tag.
実装は二つのタグを比較するとき、そうでない場合は、タグの構造を解釈してはならない、と単純に文字の文字列としてそれらを扱わなければなりません。実装は、BCP 47 [RFC3066]で定義された構文に準拠する任意の文字列が言語タグとして使用することを可能にしなければなりません。
A language tag option associates a natural language with values of an attribute. An attribute description may contain multiple language tag options. An entry may contain multiple attributes with same attribute type but different combinations of language tag (and other) options.
言語タグオプションは、属性の値を持つ自然言語を関連付けます。属性記述は、複数の言語タグオプションが含まれていてもよいです。エントリは同じ属性タイプではなく、言語タグ(およびその他)のオプションの組み合わせが異なる複数の属性が含まれていてもよいです。
A language tag option conforms to the following ABNF [RFC2234]:
言語タグオプションは以下のABNF [RFC2234]に準拠しています。
language-tag-option = "lang-" Language-Tag
言語タグオプション=「長い」言語の日
where the Language-Tag production is as defined in BCP 47 [RFC3066]. This production and those it imports from [RFC2234] are provided here for convenience:
BCP 47 [RFC3066]で定義されるように言語タグの生産があります。この生産と[RFC2234]からのもの、それの輸入は、便宜のためにここに提供されています。
Language-Tag = Primary-subtag *( "-" Subtag )
言語タグ=プライマリ・サブタグ*(「 - 」サブタグ)
Primary-subtag = 1*8ALPHA
プライマリ-サブタグ= 1 * 8ALPHA
Subtag = 1*8(ALPHA / DIGIT)
サブタグ= 1×8(ALPHA / DIGIT)
ALPHA = %x41-5A / %x61-7A ; A-Z / a-z
ALPHA =%x41-5A /%x61-7A。 -Z / Z-
DIGIT = %x30-39 ; 0-9
DIGIT =%x30-39。 0-9
A language tag option is a tagging option. A language tag option has no effect on the syntax of the attribute's values nor their transfer encoding.
言語タグオプションは、タギングオプションです。言語タグオプションは、属性の値もその転送エンコーディングの構文には影響を与えません。
Examples of valid AttributeDescription:
有効なのAttributeDescriptionの例:
givenName;lang-en-US CN;lang-ja SN;lang-de;lang-gem-PFL O;lang-i-klingon;x-foobar description;x-foobar CN
名前を与えられた; LANG-EN-US CN;長JAのSN; LANGド; LANG-GEM-PFL O;長のiクリンゴン; X-foobarに説明; X-foobarにCN
Notes: The last two have no language tag options. The x-foobar option is fictious and used for example purposes.
注:最後の二つは全く言語タグのオプションを持っていません。 X-foobarにオプションは、架空と例示の目的のために使用されます。
If language tag options are present in an AttributeDescription in an assertion, then for each entry within scope, the values of each attribute whose AttributeDescription consists of the same attribute type or its subtypes and contains each of the presented (and possibly other) options is to be matched.
言語タグオプションは、スコープ内の各エントリに対して、次に、アサーション内のAttributeDescription中に存在する場合、同一のAttributeDescription属性タイプまたはそのサブタイプで構成さである提示(およびおそらく他)の各オプションが含まれている各属性の値一致させます。
Thus, for example, a filter of an equality match of type "name;lang-en-US" and assertion value "Billy Ray", against the following directory entry:
したがって、例えば、平等マッチタイプのフィルタの「名前; LANG-EN-US」と主張値「ビリー・レイ」は、以下のディレクトリエントリに対して:
dn: SN=Ray,DC=example,DC=com objectClass: person DOES NOT MATCH (wrong type) objectClass: extensibleObject DOES NOT MATCH (wrong type) name;lang-en-US: Billy Ray MATCHES name;lang-en-US: Billy Bob DOES NOT MATCH (wrong value) CN;lang-en-US: Billy Ray MATCHES
DN:SN =レイ、DC DC = comのオブジェクトクラス、例を=:人は(間違ったタイプ)と一致しないのobjectClass:extensibleObjectというは(間違ったタイプ)と一致しない名前; LANG-EN-US:ビリー・レイは名前と一致する; LANGエン米国:ビリー・ボブは(間違った値)CNと一致していません。LANG-EN-US:ビリー・レイが一致しました
CN;lang-en-US;x-foobar: Billy Ray MATCHES CN;lang-en;x-foobar: Billy Ray DOES NOT MATCH (differing lang-) CN;x-foobar: Billy Ray DOES NOT MATCH (no lang-) name: Billy Ray DOES NOT MATCH (no lang-) SN;lang-en-GB;lang-en-US: Billy Ray MATCHES SN: Ray DOES NOT MATCH (no lang-, wrong value)
CN; LANG-EN-US; X-foobarに:ビリーレイはCNと一致しません。LANGエン; X-foobarに:ビリー・レイは(異なるlang-)CNと一致していません; X-foobarに:ビリー・レイは一致しない(何もlang- )名前:ビリー・レイが一致していない(無lang-)SN; LANG-JA-GBは、LANG-EN-US:ビリー・レイはSNと一致する:レイは(ないlang-、間違った値と一致しません)
Note that "CN" and "SN" are subtypes of "name".
「CN」と「SN」は「名前」のサブタイプであることに注意してください。
It is noted that providing a language tag option in a search filter AttributeDescription will filter out desirable values where the tag does not match exactly. For example, the filter (name;lang-en=Billy Ray) does NOT match the attribute "name;lang-en-US: Billy Ray".
検索フィルターのAttributeDescriptionの言語タグオプションを提供することは、タグが正確に一致しないことが望ま値を除外することに留意されたいです。例えば、フィルタ(名; LANGエン=ビリー・レイ)は、属性 "名前を; LANG-EN-US:ビリー・レイ" 一致していません。
If the server does not support storing attributes with language tag options in the DIT, then any assertion which includes a language tag option will not match as such it is an unrecognized attribute type. No error would be returned because of this; a presence assertion would evaluate to FALSE and all other assertions to Undefined.
サーバはDITでの言語タグオプションを使用して保存する属性をサポートしていない場合は、言語タグオプションを含む任意の主張は、それが認識されない属性タイプであるなどと一致しません。エラーはこれのために返さないであろう。プレゼンスアサーションは未定義にFALSE、他のすべてのアサーションと評価されてしまうからです。
If no options are specified in the assertion, then only the base attribute type and the assertion value need match the value in the directory.
オプションがアサーションで指定されていない場合は、基本属性タイプと主張値だけがディレクトリ内の値と一致する必要が。
Thus, for example, a filter of an equality match of type "name" and assertion value "Billy Ray", against the following directory entry:
したがって、例えば、タイプ「名前」と主張値「ビリー・レイ」の平等マッチのフィルタは、以下のディレクトリエントリに対して:
dn: SN=Ray,DC=example,DC=com objectClass: person DOES NOT MATCH (wrong type) objectClass: extensibleObject DOES NOT MATCH (wrong type) name;lang-en-US: Billy Ray MATCHES name;lang-en-US: Billy Bob DOES NOT MATCH (wrong value) CN;lang-en-US;x-foobar: Billy Ray MATCHES CN;lang-en;x-foobar: Billy Ray MATCHES CN;x-foobar: Billy Ray MATCHES name: Billy Ray MATCHES SN;lang-en-GB;lang-en-US: Billy Ray MATCHES SN: Ray DOES NOT MATCH (wrong value)
DN:SN =レイ、DC DC = comのオブジェクトクラス、例を=:人は(間違ったタイプ)と一致しないのobjectClass:extensibleObjectというは(間違ったタイプ)と一致しない名前; LANG-EN-US:ビリー・レイは名前と一致する; LANGエン米国:ビリー・ボブは(間違った値)と一致しないCN; LANG-EN-US; X-foobarに:ビリーレイはCNと一致する; LANGエン; X-foobarに:ビリーレイはCNと一致する; X-foobarに:ビリー・レイは名前に一致します。ビリー・レイはSNと一致する; LANG-JA-GB; LANG-EN-US:ビリー・レイはSNと一致する:レイは(間違った値)と一致しません
Clients can provide language tag options in each AttributeDescription in the requested attribute list in a search request.
クライアントは検索要求で要求された属性リストの各のAttributeDescriptionの言語タグオプションを提供することができます。
If language tag options are provided in an attribute description, then only attributes in a directory entry whose attribute descriptions have the same attribute type or its subtype and contains each of the presented (and possibly other) language tag options are to be returned. Thus if a client requests just the attribute "name;lang-en", the server would return "name;lang-en" and "CN;lang-en;lang-ja" but not "SN" nor "name;lang-fr".
言語タグオプションが属性記述で提供されている場合は、唯一のその属性の記述ディレクトリエントリの属性は、同じ属性タイプまたはそのサブタイプがあり、含ま提示(およびおそらく他の)言語タグの各オプションを返さなければなりません。したがって、クライアントの要求だけ属性 "名; LANG-EN" 場合、サーバーは、 "名前を; LANG-EN" を返しますと "CNを、LANGエン; LANG-JA" ではなく "SN" や「名; lang- FR」。
Clients can provide in the attribute list multiple AttributeDescriptions which have the same base attribute type but different options. For example, a client could provide both "name;lang-en" and "name;lang-fr", and this would permit an attribute with either language tag option to be returned. Note there would be no need to provide both "name" and "name;lang-en" since all subtypes of name would match "name".
クライアントは、属性リストで同じベース属性タイプが異なるオプションを持つ複数のAttributeDescriptionsを提供することができます。 「; LANGエン名」と「名; LANG-FR」たとえば、クライアントが両方を提供することができ、および言語タグオプションのいずれかが返されると、これは属性を可能にします。 「名前」との両方を提供する必要はないだろうに注意してください「という名前を; LANGエン」の名前のすべてのサブタイプが「名」と一致するからです。
If a server does not support storing attributes with language tag options in the DIT, then any attribute descriptions in the list which include language tag options are to be ignored, just as if they were unknown attribute types.
サーバはDITでの言語タグオプションを使用して保存する属性をサポートしていない場合は、言語タグオプションを含むリスト内の属性の説明は、彼らが未知の属性タイプであるかのように、無視されることになっています。
If a request is made specifying all attributes or an attribute is requested without providing a language tag option, then all attribute values regardless of their language tag option are returned.
要求はすべての属性を指定して行われるか、属性が言語タグオプションを設けることなく、要求された場合は、関係なく、彼らの言語タグオプションのすべての属性値が返されます。
For example, if the client requests a "description" attribute, and a matching entry contains the following attributes:
例えば、クライアントが「説明」属性を要求し、一致するエントリは次の属性が含まれている場合:
objectClass: top objectClass: organization O: Software GmbH description: software products description;lang-en: software products description;lang-de: Softwareprodukte
オブジェクトクラス:トップオブジェクトクラス:組織O:ソフトウェア社の説明:ソフトウェア製品の説明; LANG-EN:ソフトウェア製品の説明; LANG =ド:Softwareprodukte
The server would return:
サーバが返します:
description: software products description;lang-en: software products description;lang-de: Softwareprodukte
説明:ソフトウェア製品の説明; LANG-EN:ソフトウェア製品の説明; LANG =ド:Softwareprodukte
Language tag options can be present in an AttributeDescription used in a compare request AttributeValueAssertion. This is to be treated by servers the same as the use of language tag options in a search filter with an equality match, as described in Section 2.2. If there is no attribute in the entry with the same attribute type or its subtype and contains each of the presented (or possibly other) language tag options, the noSuchAttributeType error will be returned.
言語タグオプションは、比較要求AttributeValueAssertionで使用されるのAttributeDescription中に存在することができます。これは、2.2節で説明したように、平等マッチした検索フィルタでの言語タグオプションを使用すると同じサーバによって処理されます。そこに同じ属性タイプまたはそのサブタイプのエントリには属性がありませんし、提示(またはおそらく他の)言語タグの各オプションが含まれている場合は、noSuchAttributeTypeエラーが返されます。
Thus, for example, a compare request of type "name" and assertion value "Johann", against an entry containing the following attributes:
したがって、例えば、以下の属性を含むエントリに対し、タイプ「名前」と主張値「ヨハン」の要求を比較します。
objectClass: top objectClass: person givenName;lang-de-DE: Johann CN: Johann Sibelius SN: Sibelius
オブジェクトクラス:トップオブジェクトクラス:人givenName属性; LANGドDE:ヨハンCN:ヨハン・シベリウスSN:シベリウス
would cause the server to return compareTrue.
compareTrueを返すようにサーバーを引き起こします。
However, if the client issued a compare request of type "name;lang-de" and assertion value "Johann" against the above entry, the request would fail with the noSuchAttributeType error.
「名前; LANG =ド」のクライアントは、タイプの要求を比較を発行した場合は、上記のエントリに対して「ヨハン」と主張値、要求はnoSuchAttributeTypeエラーで失敗します。
If the server does not support storing attributes with language tag options in the DIT, then any comparison which includes a language tag option will always fail to locate an attribute, and noSuchAttributeType will be returned.
サーバはDITでの言語タグオプションを使用して保存する属性をサポートしていない場合は、言語タグオプションを含む任意の比較は常に属性を見つけるために失敗し、noSuchAttributeTypeが返されます。
Clients can provide language options in AttributeDescription in attributes of a new entry to be created.
クライアントは、作成する新しいエントリの属性でのAttributeDescriptionでの言語オプションを提供することができます。
A client can provide multiple attributes with the same attribute type and value, so long as each attribute has a different set of language tag options.
クライアントは、限り、各属性は、言語タグオプションの異なるセットを持っていると、同じ属性のタイプと値を持つ複数の属性を提供することができます。
For example, the following is a valid request:
たとえば、以下は有効な要求です。
dn: CN=John Smith,DC=example,DC=com objectClass: residentialPerson CN: John Smith CN;lang-en: John Smith SN: Smith SN;lang-en: Smith streetAddress: 1 University Street streetAddress;lang-en-US: 1 University Street streetAddress;lang-fr: 1 rue Universite houseIdentifier;lang-fr: 9e etage
DN:CN =ジョン・スミス、DC =例、DC = comのオブジェクトクラス:residentialPerson CN:ジョン・スミスCN; LANGエン:ジョン・スミスSN:スミスSN; LANGエン:スミスstreetAddress:1大学通りstreetAddress; LANGエン米国:1大学通りstreetAddress; LANG-FR:1 RUE大学HouseIdentifierという; LANG-FR:9Eのエタージュ
If a server does not support storing language tag options with attribute values in the DIT, then it MUST treat an AttributeDescription with a language tag option as an unrecognized attribute. If the server forbids the addition of unrecognized attributes then it MUST fail the add request with an appropriate result code.
サーバがDIT内の属性値を持つ言語タグオプションを格納サポートしていない場合、それは認識されていない属性として言語タグオプションでのAttributeDescriptionを扱わなければなりません。サーバーが認識されない属性の追加を禁止した場合、それは適切な結果コードと追加要求に失敗しなければなりません。
A client can provide language tag options in an AttributeDescription as part of a modification element in the modify operation.
クライアントが変更操作で変更要素の一部としてのAttributeDescriptionでの言語タグオプションを提供することができます。
Attribute types and language tag options MUST match exactly against values stored in the directory. For example, if the modification is a "delete", then if the stored values to be deleted have language tag options, then those language tag options MUST be provided in the modify operation, and if the stored values to be deleted do not have any language tag option, then no language tag option is to be provided.
タイプ属性と言語タグオプションは、ディレクトリに格納された値に対して正確に一致する必要があります。たとえば、変更、削除する格納された値は、言語タグオプションを持っている場合は、「削除」、そして、それらの言語タグオプションは変更操作に提供しなければなりませんされ、保存された値を削除する場合は、いずれかを持っていない場合言語タグオプションは、その後、何の言語タグオプションが提供されるべきではありません。
If the server does not support storing language tag options with attribute values in the DIT, then it MUST treat an AttributeDescription with a language tag option as an unrecognized attribute, and MUST fail the request with an appropriate result code.
サーバがDITに属性値を持つ言語タグオプションを格納サポートしていない場合、それは認識されていない属性として言語タグオプションでのAttributeDescriptionを扱わなければなりませんし、適切な結果コードで要求を失敗しなければなりません。
Since the publication of RFC 2596, it has become apparent that there is a need to provide a mechanism for a client to request attributes based upon set of language tag options whose tags all begin with the same sequence of language sub-tags.
RFC 2596の出版以来、それはタグ、すべての言語サブタグの同じシーケンスで始まる言語タグオプションのセットに基づいて要求属性にクライアントのためのメカニズムを提供する必要があることが明らかになりました。
AttributeDescriptions containing language range options are intended to be used in attribute value assertions, search attribute lists, and other places where the client desires to provide an attribute description matching of a range of language tags associated with attributes.
言語範囲オプションを含むAttributeDescriptionsは、クライアントが属性に関連付けられた言語タグの範囲の属性記述のマッチングを提供することを望む属性値アサーション、検索属性リスト、および他の場所で使用されることを意図しています。
A language range option conforms to the following ABNF [RFC2234]:
言語範囲オプションは以下のABNF [RFC2234]に準拠しています。
language-range-option = "lang-" [ Language-Tag "-" ]
言語レンジ・オプション=「lang-」[言語タグ「 - 」]
where the Language-Tag production is as defined in BCP 47 [RFC3066]. This production and those it imports from [RFC2234] are provided in Section 2.1 for convenience.
BCP 47 [RFC3066]で定義されるように言語タグの生産があります。この製造及び[RFC2234]からのものも輸入、便宜上、セクション2.1において提供されます。
A language range option matches a language tag option if the language range option less the trailing "-" matches exactly the language tag or if the language range option (including the trailing "-") matches a prefix of the language tag option. Note that the language range option "lang-" matches all language tag options.
「 - 」正確に言語タグと一致するか(末尾を含む「 - 」)言語範囲オプションがあれば、言語タグオプションのプレフィックスに一致する言語範囲オプション少ない末尾があれば言語範囲オプションは、言語タグオプションと一致します。言語範囲オプション「lang-は」すべての言語タグオプションと一致していることに注意してください。
Examples of valid AttributeDescription containing language range options:
言語範囲オプションを含む有効なのAttributeDescriptionの例:
givenName;lang-en-CN;lang-SN;lang-de-;lang-gem-O;lang-x-;x-foobar
givenName属性; LANG-JA-CN;長SN;長縮小;長GEM-O;長-X-; X-foobarに
A language range option is not a tagging option. Attributes cannot be stored with language range options. Any attempt to add or update an attribute description with a language range option SHALL be treated as an undefined attribute type and result in an error.
言語範囲オプションは、タギングオプションではありません。属性は、言語範囲オプションを使用して保存することができません。追加または言語範囲オプション付きの属性記述を更新する一切の試みはエラーで未定義の属性の型と結果として扱われなければなりません。
A language range option has no effect on the transfer encoding nor on the syntax of the attribute values.
言語範囲オプションは、転送エンコードにも属性値の構文には影響を与えません。
Servers SHOULD support assertion of language ranges for any attribute type which they allow to be stored with language tags.
サーバーは、彼らが言語タグを保存することを可能にする任意の属性タイプの言語範囲の主張をサポートする必要があります。
If a language range option is present in an AttributeDescription in an assertion, then for each entry within scope, the values of each attribute whose AttributeDescription consists of the same attribute type or its subtypes and contains a language tag option matching the language range option are to be returned.
言語範囲オプションがアサーションでのAttributeDescription中に存在する場合、範囲内の各エントリに対して、のAttributeDescription同じ属性タイプまたはそのサブタイプで構成され、言語範囲オプションを一致言語タグオプションが含まれている各属性の値にあります返されます。
Thus, for example, a filter of an equality match of type "name;lang-en-" and assertion value "Billy Ray", against the following directory entry:
したがって、例えば、タイプの平等マッチのフィルタ「名前; langのエン」は、以下のディレクトリエントリに対するアサーション値「ビリーレイ」、。
dn: SN=Ray,DC=example,DC=com objectClass: person DOES NOT MATCH (wrong type) objectClass: extensibleObject DOES NOT MATCH (wrong type) name;lang-en-US: Billy Ray MATCHES name;lang-en-US: Billy Bob DOES NOT MATCH (wrong value) CN;lang-en-US: Billy Ray MATCHES CN;lang-en-US;x-foobar: Billy Ray MATCHES CN;lang-en;x-foobar: Billy Ray MATCHES CN;x-foobar: Billy Ray DOES NOT MATCH (no lang-) name: Billy Ray DOES NOT MATCH (no lang-) SN;lang-en-GB;lang-en-US: Billy Ray MATCHES SN: Ray DOES NOT MATCH (no lang-, wrong value)
DN:SN =レイ、DC DC = comのオブジェクトクラス、例を=:人は(間違ったタイプ)と一致しないのobjectClass:extensibleObjectというは(間違ったタイプ)と一致しない名前; LANG-EN-US:ビリー・レイは名前と一致する; LANGエン米国:ビリー・ボブは(間違った値)と一致しないCN; LANG-EN-US:ビリーレイはCNと一致する; LANG-EN-US; X-foobarに:ビリーレイはCNと一致する; LANGエン; X-foobarに:ビリー・レイはMATCHES CN; X-foobarに:ビリー・レイは(ないlang-)名一致しません:ビリー・レイが一致していない(無lang-)SNを、LANG-JA-GB; LANG-EN-US:ビリー・レイはSNと一致する:RayはありませんMATCH(なしlang-、間違った値)
Note that "CN" and "SN" are subtypes of "name".
「CN」と「SN」は「名前」のサブタイプであることに注意してください。
If the server does not support storing attributes with language tag options in the DIT, then any assertion which includes a language range option will not match as it is an unrecognized attribute type. No error would be returned because of this; a presence filter would evaluate to FALSE and all other assertions to Undefined.
サーバはDITでの言語タグオプションを使用して保存する属性をサポートしていない場合は、それが認識されていない属性タイプであるとして、その言語範囲オプションを含むすべてのアサーションが一致しません。エラーはこれのために返さないであろう。存在フィルタは未定義にFALSE、他のすべてのアサーションと評価されてしまうからです。
Clients can provide language range options in each AttributeDescription in the requested attribute list in a search request.
クライアントは検索要求で要求された属性リストの各のAttributeDescriptionの言語範囲オプションを提供することができます。
If a language range option is provided in an attribute description, then only attributes in a directory entry whose attribute descriptions have the same attribute type or its subtype and a language tag option matching the provided language range option are to be returned. Thus if a client requests just the attribute "name;lang-en-", the server would return "name;lang-en-US" and "CN;lang-en;lang-ja" but not "SN" nor "name;lang-fr".
言語範囲オプションは属性記述で提供されている場合、唯一のその属性の記述と同じ属性タイプまたはそのサブタイプおよび提供言語範囲オプションに一致する言語タグオプションを持っているディレクトリエントリの属性返されます。 、サーバーが返す "名; LANG-EN-US" と、このように、クライアントの要求だけ属性 "LANGエン名の" if "CN; LANGエン; LANG-JA" ではなく "SN" や「名; LANG-FR」。
Clients can provide in the attribute list multiple AttributeDescriptions which have the same base attribute type but different options. For example a client could provide both "name;lang-en-" and "name;lang-fr-", and this would permit an attribute whose type was name or subtype of name and with a language tag option matching either language range option to be returned.
クライアントは、属性リストで同じベース属性タイプが異なるオプションを持つ複数のAttributeDescriptionsを提供することができます。 「名前; LANG-FR-」;「LANGエン名」とを例えばクライアントが両方を提供することができ、これは、その種の名前または名前のサブタイプだったとのいずれか言語範囲オプションに一致する言語タグオプションを持つ属性を可能にするだろう返されます。
If a server does not support storing attributes with language tag options in the DIT, then any attribute descriptions in the list which include language range options are to be ignored, just as if they were unknown attribute types.
サーバはDITでの言語タグオプションを使用して保存する属性をサポートしていない場合は、言語範囲オプションを含めるリスト内の属性の説明は、彼らが未知の属性タイプであるかのように、無視されることになっています。
Language range options can be present in an AttributeDescription used in a compare request AttributeValueAssertion. This is to be treated by servers the same as the use of language range options in a search filter with an equality match, as described in Section 3.1. If there is no attribute in the entry with the same subtype and a matching language tag option, the noSuchAttributeType error will be returned.
言語範囲オプションは比較要求AttributeValueAssertionで使用されるのAttributeDescription中に存在することができます。これは、3.1節で説明したように、平等マッチした検索フィルタにおける言語範囲オプションを使用すると同じサーバによって処理されます。同じサブタイプと一致する言語タグオプション付きのエントリに属性がない場合は、noSuchAttributeTypeエラーが返されます。
Thus, for example, a compare request of type "name;lang-" and assertion value "Johann", against the entry with the following attributes:
したがって、例えば、タイプの要求比較「名; lang-」と主張値「ヨハン」、次の属性を持つエントリに対して:
objectClass: top objectClass: person givenName;lang-de-DE: Johann CN: Johann Sibelius SN: Sibelius
オブジェクトクラス:トップオブジェクトクラス:人givenName属性; LANGドDE:ヨハンCN:ヨハン・シベリウスSN:シベリウス
will cause the server to return compareTrue. (Note that the language range option "lang-" matches any language tag option.)
サーバがcompareTrueを返すことになります。 (「lang-」言語範囲オプションは、任意の言語タグオプションと一致していることに注意してください。)
However, if the client issued a compare request of type "name;lang-de" and assertion value "Sibelius" against the above entry, the request would fail with the noSuchAttributeType error.
「名前; LANG =ド」のクライアントは、タイプの要求を比較を発行した場合は、上記のエントリに対して「シベリウス」と主張値、要求はnoSuchAttributeTypeエラーで失敗します。
If the server does not support storing attributes with language tag options in the DIT, then any comparison which includes a language range option will always fail to locate an attribute, and noSuchAttributeType will be returned.
サーバはDITでの言語タグオプションを使用して保存する属性をサポートしていない場合は、言語範囲オプションを含む任意の比較は常に属性を見つけるために失敗し、noSuchAttributeTypeが返されます。
A server SHOULD indicate that it supports storing attributes with language tag options in the DIT by publishing 1.3.6.1.4.1.4203.1.5.4 as a value of the root DSE.
サーバーは、ルートDSEの値として1.3.6.1.4.1.4203.1.5.4を公開することにより、DITでの言語タグオプションを使用して属性を格納をサポートすることを示す必要があります。
A server SHOULD indicate that it supports language range matching of attributes with language tag options stored in the DIT by publishing 1.3.6.1.4.1.4203.1.5.5 as a value of the "supportedFeatures" [RFC3674] attribute in the root DSE.
サーバは、ルートDSEで「supportedFeatures」[RFC3674]属性の値として1.3.6.1.4.1.4203.1.5.5を公開することにより、DITに格納されている言語タグオプションで属性の言語範囲マッチングをサポートしていることを示すべきです。
A server MAY restrict use of language tag options to a subset of the attribute types it recognizes. This document does not define a mechanism for determining which subset of attribute types can be used with language tag options.
サーバは、それが認識する属性タイプのサブセットに言語タグオプションの使用を制限することができます。この文書では、属性タイプのサブセットが言語タグオプションで使用できるかを決定するためのメカニズムを定義していません。
Implementators of this specification should take care that their use of language tag options does not impede proper function of implementations which do not support language tags.
この仕様のImplementatorsは、言語タグオプションの利用は、言語タグをサポートしない実装の適切な機能を妨げない世話をする必要があります。
Per RFC 2251, "an AttributeDescription with one or more options is treated as a subtype of the attribute type without any options." A non-supporting server will treat an AttributeDescription with any language tag options as an unrecognized attribute type. A non-supporting client will either do the same, or will treat the AttributeDescription as it would any other unknown subtype. Typically, non-supporting clients simply ignore unrecognized subtypes (and unrecognized attribute types) of attributes they request.
RFC 2251ごとに、「1つまたは複数のオプションを持つのAttributeDescriptionは、オプションなしの属性型のサブタイプとして扱われます。」非サポートサーバが認識されない属性型として任意の言語タグオプションでのAttributeDescriptionを扱うでしょう。クライアントが同じことをするでしょうか、それは任意の他の未知のサブタイプと同じようにのAttributeDescriptionを扱う非サポート。一般的に、非サポートのクライアントは単に、彼らが要求する属性の未認識のサブタイプ(と認識されていない属性タイプ)を無視します。
To ensure proper function of non-supporting clients, supporting clients SHOULD ensure that entries they populate with tagged values are also populated with non-tagged values.
非サポートのクライアントの適切な機能を確保するために、サポートするクライアントは、タグ付けされた値を持つ彼らは移入エントリはまた、非タグ付き値が移入されていることを確認してください。
Additionally, supporting clients SHOULD be prepared to handle entries which are not populated with tagged values.
また、支持クライアントがタグ付けされた値が移入されていないエントリを処理するために準備されるべきです。
Language tags and range options are used solely to indicate the native language of values and in querying the directory for values which fulfill the user's language needed. These options are not known to raise specific security considerations. However, the reader should consider general directory security issues detailed in the LDAP technical specification [RFC3377].
言語タグと範囲オプションは、値の、ユーザーの言語が必要満たす値のためのディレクトリを照会中のネイティブ言語を示すためにのみ使用されています。これらのオプションは、特定のセキュリティの考慮事項を提起することが知られていません。しかし、読者は、LDAP技術仕様書[RFC3377]に詳述され、一般的なディレクトリのセキュリティ問題を考慮する必要があります。
Registration of these protocol mechanisms [RFC3383] has been completed by the IANA.
これらのプロトコルメカニズム[RFC3383]の登録はIANAによって完成されました。
Subject: Request for LDAP Protocol Mechanism Registration Object Identifier: 1.3.6.1.4.1.4203.1.5.4 Description: Language Tag Options Object Identifier: 1.3.6.1.4.1.4203.1.5.5 Description: Language Range Options Person & email address to contact for further information: Kurt Zeilenga <kurt@openldap.org> Usage: Feature Specification: RFC 3866 Author/Change Controller: IESG Comments: none
件名:LDAPプロトコルメカニズム登録オブジェクト識別子の要求:1.3.6.1.4.1.4203.1.5.4説明:言語タグオプションは、オブジェクト識別子:1.3.6.1.4.1.4203.1.5.5概要:言語範囲オプション人とEメールアドレスのために連絡します情報:クルトZeilenga <kurt@openldap.org>使用法:機能仕様:RFC 3866著者/変更コントローラ:IESGコメント:なし
These OIDs were assigned [ASSIGN] by OpenLDAP Foundation, under its IANA-assigned private enterprise allocation [PRIVATE], for use in this specification.
これらのOIDは、本明細書で使用するために、そのIANAによって割り当てられた民間企業の割り当て[PRIVATE]の下で、OpenLDAPの財団[ASSIGN]を割り当てました。
This document is a revision of RFC 2596 by Mark Wahl and Tim Howes. RFC 2596 was a product of the IETF ASID and LDAPEXT working groups. This document also borrows from a number of IETF documents including BCP 47 by H. Alvestrand.
この文書では、マーク・ワールとティム・ハウズによってRFC 2596の改訂版です。 RFC 2596は、IETF ASIDとLDAPEXTワーキンググループの製品でした。この文書はまた、H. AlvestrandによってBCP 47を含むIETF文書の数から借ります。
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC2119]ブラドナーの、S.、 "要件レベルを示すためにRFCsにおける使用のためのキーワード"、BCP 14、RFC 2119、1997年3月。
[RFC2234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", RFC 2234, November 1997.
[RFC2234]クロッカー、D.、エド。そして、P. Overell、 "構文仕様のための増大しているBNF:ABNF"、RFC 2234、1997年11月。
[RFC2251] Wahl, M., Howes, T. and S. Kille, "Lightweight Directory Access Protocol (v3)", RFC 2251, December 1997.
[RFC2251]ワール、M.、ハウズ、T.およびS. Kille、 "軽量のディレクトリアクセスプロトコル(V3)"、RFC 2251、1997年12月。
[RFC3066] Alvestrand, H., "Tags for the Identification of Languages", BCP 47, RFC 3066, January 2001.
[RFC3066] Alvestrand、H.、 "言語識別のためのタグ"、BCP 47、RFC 3066、2001年1月。
[RFC3377] Hodges, J. and R. Morgan, "Lightweight Directory Access Protocol (v3): Technical Specification", RFC 3377, September 2002.
[RFC3377]ホッジス、J.とR.モルガン、 "ライトウェイトディレクトリアクセスプロトコル(v3の):技術仕様"、RFC 3377、2002年9月。
[RFC3674] Zeilenga, K., "Feature Discovery in Lightweight Directory Access Protocol (LDAP)", RFC 3674, December 2003.
[RFC3674] Zeilenga、K.、RFC 3674、2003年12月 "のLDAP(Lightweight Directory Access Protocol)における機能の発見"。
[ASCII] Coded Character Set--7-bit American Standard Code for Information Interchange, ANSI X3.4-1986.
情報交換、ANSI X3.4-1986のために7ビットの米国標準コード - [ASCII]文字セットをコード化されました。
[X.501] International Telecommunication Union - Telecommunication Standardization Sector, "The Directory -- Models," X.501(1997).
[X.501]国際電気通信連合 - 電気通信標準化部門、 "ディレクトリ - モデル、" X.501(1997)。
[RFC3383] Zeilenga, K., "Internet Assigned Numbers Authority (IANA) Considerations for Lightweight Directory Access Protocol (LDAP)", BCP 64, RFC 3383, September 2002.
[RFC3383] Zeilenga、K.、 "IANA(Internet Assigned Numbers Authority)のライトウェイトディレクトリアクセスプロトコル(LDAP)に関する考慮事項"、BCP 64、RFC 3383、2002年9月。
[ASSIGN] OpenLDAP Foundation, "OpenLDAP OID Delegations", http://www.openldap.org/foundation/oid-delegate.txt.
[ASSIGN]のOpenLDAP財団、 "OpenLDAPのOIDの代表団"、http://www.openldap.org/foundation/oid-delegate.txt。
[PRIVATE] IANA, "Private Enterprise Numbers", http://www.iana.org/assignments/enterprise-numbers.
[PRIVATE] IANA、 "民間企業番号"、http://www.iana.org/assignments/enterprise-numbers。
Appendix A. Differences from
からの付録A.の違い
This document adds support for language ranges, provides a mechanism that a client can use to discover whether a server supports language tags and ranges, and clarifies how attributes with multiple language tags are to be treated. This document is a significant rewrite of RFC 2596.
この文書は、言語範囲のサポートを追加するクライアントは、サーバーが言語タグと範囲をサポートし、複数の言語タグと属性が処理される方法を明確にするかどうかを発見するために使用できるメカニズムを提供します。この文書は、RFC 2596の重要な書き直したものです。
Appendix B. Differences from X.500(1997)
X.500から付録B.違い(1997)
X.500(1997) [X.501] defines a different mechanism, contexts, as the means of representing language tags (codes). This section summarizes the major differences in approach.
X.500(1997)[X.501]言語タグ(コード)を表す手段として、異なる機構、コンテキストを定義します。このセクションでは、アプローチの主要な相違点をまとめました。
a) An X.500 operation which has specified a language code on a value matches a value in the directory without a language code.
A)値に言語コードを指定したX.500動作は言語コードなしでディレクトリ内の値と一致します。
b) LDAP references BCP 47 [RFC3066], which allows for IANA registration of new tags as well as unregistered tags.
B)LDAPは、IANAの新しいタグの登録と同様に未登録のタグを可能BCP 47 [RFC3066]を参照します。
c) LDAP supports language ranges (new in this revision).
C)LDAPは、言語の範囲(このリビジョンで新しい)をサポートしています。
d) LDAP does not allow language tags (and ranges) in distinguished names.
d)のLDAP識別名に言語タグ(および範囲)を許可していません。
e) X.500 describes subschema administration procedures to allow language codes to be associated with particular attributes types.
E)X.500は、言語コードが特定の属性タイプに関連付けることができるようにサブスキーマ管理手順が記載されています。
Editor's Address
編集者の住所
Kurt D. Zeilenga OpenLDAP Foundation
クルトD. ZeilengaのOpenLDAP財団
EMail: Kurt@OpenLDAP.org
メールアドレス:Kurt@OpenLDAP.org
Full Copyright Statement
完全な著作権声明
Copyright (C) The Internet Society (2004). 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.
著作権(C)インターネット協会(2004)。この文書では、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 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.
この文書とここに含まれている情報は、基礎とCONTRIBUTOR「そのまま」、ORGANIZATION HE / SHEが表すまたはインターネットソサエティおよびインターネット・エンジニアリング・タスク・フォース放棄すべての保証、明示または、(もしあれば)後援ISに設けられています。黙示、情報の利用は、特定の目的に対する権利または商品性または適合性の黙示の保証を侵害しない任意の保証含むがこれらに限定されません。
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.
IPRの開示のコピーが利用できるようにIETF事務局とライセンスの保証に行われた、または本仕様の実装者または利用者がそのような所有権の使用のための一般的なライセンスまたは許可を取得するために作られた試みの結果を得ることができます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に情報を記述してください。
Acknowledgement
謝辞
Funding for the RFC Editor function is currently provided by the Internet Society.
RFC Editor機能のための基金は現在、インターネット協会によって提供されます。