[要約] RFC 8089は、"file" URIスキームの仕様を定義しており、ローカルファイルへのアクセスを可能にするための目的を持っています。

Internet Engineering Task Force (IETF)                         M. Kerwin
Request for Comments: 8089                                           QUT
Updates: 1738                                              February 2017
Category: Standards Track
ISSN: 2070-1721
        

The "file" URI Scheme

「ファイル」URIスキーム

Abstract

概要

This document provides a more complete specification of the "file" Uniform Resource Identifier (URI) scheme and replaces the very brief definition in Section 3.10 of RFC 1738.

このドキュメントは、「ファイル」のURI(Uniform Resource Identifier)スキームのより完全な仕様を提供し、RFC 1738のセクション3.10の非常に短い定義を置き換えます。

It defines a common syntax that is intended to interoperate across the broad spectrum of existing usages. At the same time, it notes some other current practices around the use of file URIs.

これは、既存の使用法の広い範囲にわたって相互運用することを目的とした共通の構文を定義します。同時に、ファイルURIの使用に関する他のいくつかの現在の慣行についても触れています。

Status of This Memo

本文書の状態

This is an Internet Standards Track document.

これはInternet Standards Trackドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.

このドキュメントは、IETF(Internet Engineering Task Force)の製品です。これは、IETFコミュニティのコンセンサスを表しています。公開レビューを受け、インターネットエンジニアリングステアリンググループ(IESG)による公開が承認されました。インターネット標準の詳細については、RFC 7841のセクション2をご覧ください。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc8089.

このドキュメントの現在のステータス、正誤表、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc8089で入手できます。

Copyright Notice

著作権表示

Copyright (c) 2017 IETF Trust and the persons identified as the document authors. All rights reserved.

Copyright(c)2017 IETF Trustおよびドキュメントの作成者として識別された人物。全著作権所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

この文書は、BCP 78およびこの文書の発行日に有効なIETF文書に関するIETFトラストの法的規定(http://trustee.ietf.org/license-info)の対象となります。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。

Table of Contents

目次

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Notational Conventions  . . . . . . . . . . . . . . . . .   3
   2.  Syntax  . . . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Operations Involving <file> URIs  . . . . . . . . . . . . . .   5
   4.  File System Name Encoding . . . . . . . . . . . . . . . . . .   5
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   6
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   8
   Appendix A.  Differences from Previous Specifications . . . . . .  10
   Appendix B.  Example URIs . . . . . . . . . . . . . . . . . . . .  10
   Appendix C.  Similar Technologies . . . . . . . . . . . . . . . .  10
   Appendix D.  System-Specific Operations . . . . . . . . . . . . .  11
     D.1.  POSIX Systems . . . . . . . . . . . . . . . . . . . . . .  11
     D.2.  DOS- and Windows-Like Systems . . . . . . . . . . . . . .  11
     D.3.  Mac OS X Systems  . . . . . . . . . . . . . . . . . . . .  12
     D.4.  OpenVMS Files-11 Systems  . . . . . . . . . . . . . . . .  12
   Appendix E.  Nonstandard Syntax Variations  . . . . . . . . . . .  12
     E.1.  User Information  . . . . . . . . . . . . . . . . . . . .  12
     E.2.  DOS and Windows Drive Letters . . . . . . . . . . . . . .  13
       E.2.1.  Relative Resolution . . . . . . . . . . . . . . . . .  13
       E.2.2.  Vertical Line Character . . . . . . . . . . . . . . .  14
     E.3.  UNC Strings . . . . . . . . . . . . . . . . . . . . . . .  15
       E.3.1.  <file> URI with Authority . . . . . . . . . . . . . .  15
       E.3.2.  <file> URI with UNC Path  . . . . . . . . . . . . . .  16
     E.4.  Backslash as Separator  . . . . . . . . . . . . . . . . .  17
   Appendix F.  Collected Nonstandard Rules  . . . . . . . . . . . .  17
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .  19
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  19
        
1. Introduction
1. はじめに

A file URI identifies an object (a "file") stored in a structured object naming and accessing environment on a host (a "file system"). The URI can be used in discussions about the file, and if other conditions are met it can be dereferenced to directly access the file.

ファイルURIは、ホスト(「ファイルシステム」)上の環境に名前を付けてアクセスする構造化オブジェクトに格納されたオブジェクト(「ファイル」)を識別します。 URIはファイルに関する議論で使用でき、他の条件が満たされている場合は、間接参照してファイルに直接アクセスできます。

This document specifies a syntax based on the generic syntax of [RFC3986] that is compatible with most existing usages. Where incompatibilities arise, they are usually in parts of the scheme that were underspecified in earlier definitions and have been tightened up by more recent specifications. Appendix A lists significant changes to syntax.

このドキュメントは、ほとんどの既存の使用法と互換性がある[RFC3986]の一般的な構文に基づく構文を指定します。非互換性が発生する場合、それらは通常、以前の定義では不十分に指定されていたスキームの一部であり、より最近の仕様によって強化されています。付録Aに、構文の重要な変更を示します。

Extensions to the syntax that might be encountered in practice are listed in Appendix E; these extensions are listed for informational purposes and are not a requirement of implementation.

実際に遭遇する可能性のある構文の拡張は、付録Eにリストされています。これらの拡張機能は情報提供の目的でリストされており、実装の要件ではありません。

The file URI scheme is not coupled with a specific protocol nor with a specific media type [RFC6838]. See Section 3 for a discussion of operations that can be performed on the object identified by a file URI.

ファイルURIスキームは、特定のプロトコルや特定のメディアタイプ[RFC6838]と組み合わせられていません。ファイルURIで識別されるオブジェクトに対して実行できる操作については、セクション3を参照してください。

1.1. Notational Conventions
1.1. 表記規則

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 [RFC2119] when they appear in all upper case. They may also appear in lower or mixed case as English words, without normative meaning.

このドキュメントのキーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」、および「OPTIONAL」は、それらがすべて大文字で現れる場合、[RFC2119]で説明されているように解釈されます。それらは、規範的な意味なしに、英語の単語として小文字または大文字と小文字が混在して表示される場合もあります。

Throughout this document, the term "local file" is used to describe files that can be accessed through the local file system API using only the information included in the file path, not relying on other information (such as network addresses). It is important to note that a local file may not be physically located on the local machine, for example, if a networked file system is transparently mounted into the local file system.

このドキュメント全体で、「ローカルファイル」という用語は、ファイルパスに含まれる情報のみを使用してローカルファイルシステムAPIからアクセスできるファイルを示し、他の情報(ネットワークアドレスなど)に依存していません。たとえば、ネットワーク化されたファイルシステムが透過的にローカルファイルシステムにマウントされている場合、ローカルファイルがローカルマシン上に物理的に配置されていない可能性があることに注意することが重要です。

The term "local file URI" is used to describe file URIs that have no "authority" component or where the authority is the special string "localhost" or a fully qualified domain name that resolves to the machine from which the URI is being interpreted (Section 2).

「ローカルファイルURI」という用語は、「authority」コンポーネントのないファイルURI、または権限が特別な文字列「localhost」またはURIの解釈元のマシンに解決される完全修飾ドメイン名であるファイルURIを表すために使用されます(第2節)。

2. Syntax
2. 構文

The file URI syntax is defined here in Augmented Backus-Naur Form (ABNF) [RFC5234], importing the "host" and "path-absolute" rules from [RFC3986] (as updated by [RFC6874]).

ファイルURIの構文は、ここではAugmented Backus-Naur Form(ABNF)[RFC5234]で定義され、[RFC3986]から「ホスト」および「パス絶対」ルールをインポートします([RFC6874]によって更新)。

The generic syntax in [RFC3986] includes "path" and "authority" components, for each of which only a subset is used in the definition of the file URI scheme. The relevant subset of "path" is "path-absolute", and the subset of "authority" is "file-auth", given below.

[RFC3986]の一般的な構文には、「パス」および「権限」コンポーネントが含まれ、それぞれのサブセットのみがファイルURIスキームの定義で使用されます。以下に示す「パス」の関連サブセットは「パス絶対」であり、「権限」のサブセットは「ファイル認証」です。

The syntax definition below is different from those given in [RFC1630] and [RFC1738] as it is derived from the generic syntax of [RFC3986], which postdates the previous file URI specifications. Appendix A enumerates significant differences.

以下の構文定義は、[RFC1630]や[RFC1738]で提供されているものとは異なります。これは、以前のファイルURI仕様を後日公開する[RFC3986]の一般的な構文から派生したものです。付録Aでは、重要な違いを列挙しています。

file-URI = file-scheme ":" file-hier-part

file-URI = file-scheme ":" file-hier-part

      file-scheme    = "file"
        
      file-hier-part = ( "//" auth-path )
                     / local-path
        
      auth-path      = [ file-auth ] path-absolute
        
      local-path     = path-absolute
        

file-auth = "localhost" / host

file-auth = "localhost" /ホスト

The "host" is the fully qualified domain name of the system on which the file is accessible. This allows a client on another system to know that it cannot access the file system, or perhaps that it needs to use some other local mechanism to access the file.

「ホスト」は、ファイルにアクセスできるシステムの完全修飾ドメイン名です。これにより、別のシステム上のクライアントは、ファイルシステムにアクセスできないこと、またはおそらく他のローカルメカニズムを使用してファイルにアクセスする必要があることを知ることができます。

As a special case, the "file-auth" rule can match the string "localhost" that is interpreted as "the machine from which the URI is being interpreted," exactly as if no authority were present. Some current usages of the scheme incorrectly interpret all values in the authority of a file URI, including "localhost", as non-local. Yet others interpret any value as local, even if the "host" does not resolve to the local machine. To maximize compatibility with previous specifications, users MAY choose to include an "auth-path" with no "file-auth" when creating a URI.

特殊なケースとして、「file-auth」ルールは、「URIの解釈元のマシン」として解釈される文字列「localhost」と一致することができます。これは、権限が存在しない場合とまったく同じです。スキームの現在のいくつかの使用法は、「localhost」を含むファイルURIの権限のすべての値を非ローカルとして誤って解釈します。さらに、「ホスト」がローカルマシンに解決されない場合でも、値をローカルとして解釈するものもあります。以前の仕様との互換性を最大にするために、ユーザーは、URIの作成時に「file-auth」のない「auth-path」を含めることを選択できます。

The path component represents the absolute path to the file in the file system. See Appendix D for some discussion of system-specific concerns including absolute file paths and file system roots.

パスコンポーネントは、ファイルシステム内のファイルへの絶対パスを表します。絶対ファイルパスやファイルシステムルートなど、システム固有の問題については、付録Dを参照してください。

Some file systems have case-sensitive file naming and some do not. As such, the file URI scheme supports case sensitivity in order to retain the case as given. Any transport-related handling of the file URI scheme MUST retain the case as given. Any mapping to or from a case-insensitive form is solely the responsibility of the implementation processing the file URI on behalf of the referenced file system.

一部のファイルシステムでは、大文字と小文字が区別されるファイルの名前付けと、付けられないファイルシステムがあります。そのため、ファイルURIスキームは、指定された大文字と小文字を保持するために大文字と小文字の区別をサポートしています。ファイルURIスキームのトランスポート関連の処理は、指定された大文字と小文字を保持する必要があります。大文字と小文字を区別しないフォームとの間のマッピングは、参照されるファイルシステムに代わってファイルURIを処理する実装の責任です。

Also see Appendix E, which lists some nonstandard syntax variations that can be encountered in practice.

また、実際に発生する可能性のあるいくつかの非標準構文のバリエーションを示す付録Eも参照してください。

3. Operations Involving <file> URIs
3. <file> URIを伴う操作

See the POSIX file and directory operations [POSIX] for examples of standardized operations that can be performed on files.

ファイルに対して実行できる標準化された操作の例については、POSIXファイルおよびディレクトリ操作[POSIX]を参照してください。

A file URI can be dependably dereferenced or translated to a local file path only if it is local. A file URI is considered "local" if it has no "file-auth", or the "file-auth" is the special string "localhost", or a fully qualified domain name that resolves to the machine from which the URI is being interpreted (Section 2).

ファイルURIは、ローカルである場合にのみ、確実に間接参照またはローカルファイルパスに変換できます。 「file-auth」がない場合、または「file-auth」が特別な文字列「localhost」、またはURIの送信元のマシンに解決される完全修飾ドメイン名の場合、ファイルURIは「ローカル」と見なされます解釈されます(セクション2)。

This specification neither defines nor forbids any set of operations that might be performed on a file identified by a non-local file URI.

この仕様は、非ローカルファイルURIで識別されるファイルに対して実行される可能性のある操作のセットを定義も禁止もしていません。

4. File System Name Encoding
4. ファイルシステム名のエンコーディング

File systems use various encoding schemes to store file and directory names. Many modern file systems store file and directory names as arbitrary sequences of octets, in which case the representation as an encoded string often depends on the user's localization settings or defaults to UTF-8 [STD63].

ファイルシステムは、さまざまなエンコードスキームを使用してファイルとディレクトリの名前を格納します。最新のファイルシステムの多くは、ファイル名とディレクトリ名をオクテットの任意のシーケンスとして保存します。この場合、エンコードされた文字列としての表現は、ユーザーのローカリゼーション設定またはデフォルトのUTF-8 [STD63]に依存することがよくあります。

When a file URI is produced that represents textual data consisting of characters from the Unicode Standard coded character set [UNICODE], the data SHOULD be encoded as octets according to the UTF-8 character encoding scheme [STD63] before percent-encoding is applied (as per Section 2.5 of [RFC3986]).

Unicode標準コード化文字セット[UNICODE]の文字で構成されるテキストデータを表すファイルURIが生成される場合、パーセントエンコードが適用される前に、データはUTF-8文字エンコードスキーム[STD63]に従ってオクテットとしてエンコードされる必要があります(SHOULD)。 [RFC3986]のセクション2.5に従います)。

A decision not to use percent-encoded UTF-8 is outside the scope of this specification. It will typically require the use of heuristics or explicit knowledge about the way the string will be processed.

パーセントエンコードされたUTF-8を使用しないという決定は、この仕様の範囲外です。通常、文字列の処理方法に関するヒューリスティックまたは明示的な知識を使用する必要があります。

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

There are many security considerations for URI schemes discussed in [RFC3986].

[RFC3986]で議論されているURIスキームのための多くのセキュリティ考慮事項があります。

File access and the granting of privileges for specific operations are complex topics, and the use of file URIs can complicate the security model in effect for file privileges.

ファイルアクセスと特定の操作に対する特権の付与は複雑なトピックであり、ファイルURIを使用すると、ファイル特権に対して有効なセキュリティモデルが複雑になる可能性があります。

Historically, user agents have granted content from the file URI scheme a tremendous amount of privilege. However, granting all local files such wide privileges can lead to privilege escalation attacks. Some user agents have had success granting local files directory-based privileges, but this approach has not been widely adopted. Other user agents use globally unique identifiers as the origin for each file URI [RFC6454], which is the most secure option.

これまで、ユーザーエージェントは、ファイルURIスキームのコンテンツに多大な特権を与えてきました。ただし、すべてのローカルファイルにこのような幅広い権限を付与すると、権限昇格攻撃につながる可能性があります。一部のユーザーエージェントは、ローカルファイルのディレクトリベースの権限の付与に成功していますが、このアプローチは広く採用されていません。他のユーザーエージェントは、各ファイルURI [RFC6454]の起点としてグローバルに一意の識別子を使用します。これは、最も安全なオプションです。

Treating a non-local file URI as local, or otherwise attempting to perform local operations on a non-local URI, can result in security problems.

非ローカルファイルURIをローカルとして扱うか、そうでなければ非ローカルURIでローカル操作を実行しようとすると、セキュリティ上の問題が発生する可能性があります。

File systems typically assign an operational meaning to special characters, such as the "/", "\", ":", "[", and "]" characters, and to special device names like ".", "..", "...", "aux", "lpt", etc. In some cases, merely testing for the existence of such a name will cause the operating system to pause or invoke unrelated system calls, leading to significant security concerns regarding denial of service and unintended data transfer. It would not be possible for this specification to list all such significant characters and device names. Implementers should research the reserved names and characters for the types of storage devices that may be attached to their application and restrict the use of data obtained from URI components accordingly.

ファイルシステムは通常、「/」、「\」、「:」、「[」、「]」などの特殊文字と、「。」、「..」などの特殊なデバイス名に操作上の意味を割り当てます。 、「...」、「aux」、「lpt」など。場合によっては、単にそのような名前の存在をテストするだけで、オペレーティングシステムが一時停止したり、関連のないシステムコールを呼び出したりして、拒否に関する重大なセキュリティ上の懸念が生じるサービスと意図しないデータ転送。この仕様では、このような重要な文字とデバイス名をすべてリストすることはできません。実装者は、アプリケーションに接続できるストレージデバイスのタイプの予約名と文字を調査し、それに応じてURIコンポーネントから取得したデータの使用を制限する必要があります。

File systems vary in the way they handle case. Care must be taken to avoid issues resulting from possibly unexpected aliasing from case-only differences between file paths or URIs or from mismatched encodings or Unicode equivalences [UAX15] (see Section 4).

ファイルシステムは、大文字と小文字の処理方法が異なります。ファイルパスまたはURIの大文字と小文字のみの違い、またはエンコーディングの不一致やUnicodeの同等値[UAX15](セクション4を参照)による予期しないエイリアシングに起因する問題を回避するために注意が必要です。

6. IANA Considerations
6. IANAに関する考慮事項

This document defines the following permanent URI scheme. The "Uniform Resource Identifier (URI) Schemes" registry has been updated accordingly. This registration complies with [BCP35].

このドキュメントでは、次の永続的なURIスキームを定義しています。 "Uniform Resource Identifier(URI)Schemes"レジストリはそれに応じて更新されました。この登録は[BCP35]に準拠しています。

Scheme name: file

スキーム名:ファイル

Status: permanent

ステータス:永続的

Applications/protocols that use this scheme name: Commonly used in hypertext documents to refer to files without depending on network access. Supported by major browsers.

このスキーム名を使用するアプリケーション/プロトコル:ネットワークアクセスに依存せずにファイルを参照するためにハイパーテキストドキュメントで一般的に使用されます。主要なブラウザでサポートされています。

Used in development libraries, such as:

次のような開発ライブラリで使用されます。

* Windows Shell (PathCreateFromUrl, UrlCreateFromPath)

* Windowsシェル(PathCreateFromUrl、UrlCreateFromPath)

* libwww-perl - The World-Wide Web library for Perl

* libwww-perl-Perl用のワールドワイドWebライブラリ

   Contact:
      Applications and Real-Time Area <art@ietf.org>
        
   Change Controller:
      IETF <ietf@ietf.org>
        

References: This RFC

参考資料:このRFC

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

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <http://www.rfc-editor.org/info/rfc2119>.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、DOI 10.17487 / RFC2119、1997年3月、<http://www.rfc-editor.org/info/ rfc2119>。

[RFC3986] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, DOI 10.17487/RFC3986, January 2005, <http://www.rfc-editor.org/info/rfc3986>.

[RFC3986] Berners-Lee、T.、Fielding、R。、およびL. Masinter、「Uniform Resource Identifier(URI):Generic Syntax」、STD 66、RFC 3986、DOI 10.17487 / RFC3986、2005年1月、<http:/ /www.rfc-editor.org/info/rfc3986>。

[RFC5234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, DOI 10.17487/RFC5234, January 2008, <http://www.rfc-editor.org/info/rfc5234>.

[RFC5234]クロッカー、D。、エド。およびP. Overell、「構文仕様の拡張BNF:ABNF」、STD 68、RFC 5234、DOI 10.17487 / RFC5234、2008年1月、<http://www.rfc-editor.org/info/rfc5234>。

[RFC6454] Barth, A., "The Web Origin Concept", RFC 6454, DOI 10.17487/RFC6454, December 2011, <http://www.rfc-editor.org/info/rfc6454>.

[RFC6454] Barth、A。、「The Web Origin Concept」、RFC 6454、DOI 10.17487 / RFC6454、2011年12月、<http://www.rfc-editor.org/info/rfc6454>。

[RFC6874] Carpenter, B., Cheshire, S., and R. Hinden, "Representing IPv6 Zone Identifiers in Address Literals and Uniform Resource Identifiers", RFC 6874, DOI 10.17487/RFC6874, February 2013, <http://www.rfc-editor.org/info/rfc6874>.

[RFC6874] Carpenter、B.、Cheshire、S。、およびR. Hinden、「Representing IPv6 Zone Identifiers in Address Literals and Uniform Resource Identifiers」、RFC 6874、DOI 10.17487 / RFC6874、2013年2月、<http:// www。 rfc-editor.org/info/rfc6874>。

[STD63] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, November 2003, <http://www.rfc-editor.org/info/std63>.

[STD63] Yergeau、F。、「UTF-8、ISO 10646の変換フォーマット」、STD 63、RFC 3629、2003年11月、<http://www.rfc-editor.org/info/std63>。

7.2. Informative References
7.2. 参考引用

[Bash-Tilde] Free Software Foundation, Inc, "Bash Reference Manual: Tilde Expansion", September 2016, <http://www.gnu.org/software/bash/manual/html_node/ Tilde-Expansion.html>.

[Bash-Tilde] Free Software Foundation、Inc、「Bash Reference Manual:Tilde Expansion」、2016年9月、<http://www.gnu.org/software/bash/manual/html_node/ Tilde-Expansion.html>。

[BCP35] Thaler, D., Ed., Hansen, T., and T. Hardie, "Guidelines and Registration Procedures for URI Schemes", BCP 35, RFC 7595, June 2015, <http://www.rfc-editor.org/info/bcp35>.

[BCP35] Thaler、D.、Ed。、Hansen、T。、およびT. Hardie、「URIスキームのガイドラインと登録手順」、BCP 35、RFC 7595、2015年6月、<http://www.rfc-editor .org / info / bcp35>。

[Bug107540] Bugzilla@Mozilla, "Bug 107540", October 2001, <https://bugzilla.mozilla.org/show_bug.cgi?id=107540>.

[Bug107540] Bugzilla @ Mozilla、「Bug 107540」、2001年10月、<https://bugzilla.mozilla.org/show_bug.cgi?id=107540>。

[MS-DTYP] Microsoft, "Windows Data Types: 2.2.57 UNC", October 2015, <http://msdn.microsoft.com/en-us/library/gg465305.aspx>.

[MS-DTYP] Microsoft、「Windowsデータタイプ:2.2.57 UNC」、2015年10月、<http://msdn.microsoft.com/en-us/library/gg465305.aspx>。

[POSIX] IEEE, "IEEE Std 1003.1, 2013 Edition - Standard for Information Technology-- Portable Operating System Interface (POSIX(R)) Base Specifications, Issue 7", DOI 10.1109/IEEESTD.2013.6506091, April 2013.

[POSIX] IEEE、「IEEE Std 1003.1、2013 Edition-Standard for Information Technology-- Portable Operating System Interface(POSIX(R))Base Specifications、Issue 7」、DOI 10.1109 / IEEESTD.2013.6506091、2013年4月。

[RFC1630] Berners-Lee, T., "Universal Resource Identifiers in WWW: A Unifying Syntax for the Expression of Names and Addresses of Objects on the Network as used in the World-Wide Web", RFC 1630, DOI 10.17487/RFC1630, June 1994, <http://www.rfc-editor.org/info/rfc1630>.

[RFC1630] Berners-Lee、T。、「WWWのユニバーサルリソースID:World-Wide Webで使用されるネットワーク上のオブジェクトの名前とアドレスの表現の統一構文」、RFC 1630、DOI 10.17487 / RFC1630、 1994年6月、<http://www.rfc-editor.org/info/rfc1630>。

[RFC1738] Berners-Lee, T., Masinter, L., and M. McCahill, "Uniform Resource Locators (URL)", RFC 1738, DOI 10.17487/RFC1738, December 1994, <http://www.rfc-editor.org/info/rfc1738>.

[RFC1738] Berners-Lee、T.、Masinter、L。、およびM. McCahill、「Uniform Resource Locators(URL)」、RFC 1738、DOI 10.17487 / RFC1738、1994年12月、<http://www.rfc-editor .org / info / rfc1738>。

[RFC2396] Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform Resource Identifiers (URI): Generic Syntax", RFC 2396, DOI 10.17487/RFC2396, August 1998, <http://www.rfc-editor.org/info/rfc2396>.

[RFC2396] Berners-Lee、T.、Fielding、R。、およびL. Masinter、「Uniform Resource Identifiers(URI):Generic Syntax」、RFC 2396、DOI 10.17487 / RFC2396、1998年8月、<http:// www。 rfc-editor.org/info/rfc2396>。

[RFC6838] Freed, N., Klensin, J., and T. Hansen, "Media Type Specifications and Registration Procedures", BCP 13, RFC 6838, DOI 10.17487/RFC6838, January 2013, <http://www.rfc-editor.org/info/rfc6838>.

[RFC6838] Freed、N.、Klensin、J。、およびT. Hansen、「Media Type Specifications and Registration Procedures」、BCP 13、RFC 6838、DOI 10.17487 / RFC6838、2013年1月、<http://www.rfc- editor.org/info/rfc6838>。

[UAX15] Davis, M., Ed. and K. Whistler, Ed., "Unicode Standard Annex #15: Unicode Normalization Forms", February 2016, <http://www.unicode.org/reports/tr15/tr15-44.html>.

[UAX15]デービス、M。、エド。 K.ウィスラー編、「Unicode Standard Annex#15:Unicode Normalization Forms」、2016年2月、<http://www.unicode.org/reports/tr15/tr15-44.html>。

[UNICODE] The Unicode Consortium, "The Unicode Standard, Version 9.0.0", ISBN 978-1-936213-13-9, June 2016, <http://www.unicode.org/versions/Unicode9.0.0/>.

[UNICODE] Unicodeコンソーシアム、「The Unicode Standard、Version 9.0.0」、ISBN 978-1-936213-13-9、2016年6月、<http://www.unicode.org/versions/Unicode9.0.0/> 。

[WHATWG-URL] WHATWG, "URL Living Standard", January 2017, <https://url.spec.whatwg.org/>.

[WHATWG-URL] WHATWG、「URL Living Standard」、2017年1月、<https://url.spec.whatwg.org/>。

[Win32-Namespaces] Microsoft Developer Network Blogs, "Naming Files, Paths, and Namespaces", June 2013, <https://msdn.microsoft.com/ en-us/library/windows/desktop/aa365247(v=vs.85).aspx>.

[Win32-Namespaces] Microsoft Developer Network Blogs、「Naming Files、Paths、and Namespaces」、2013年6月、<https://msdn.microsoft.com/ en-us / library / windows / desktop / aa365247(v = vs。 85).aspx>。

[Zsh-Tilde] "The Z Shell Manual: 14.7 Filename Expansion", December 2015, <http://zsh.sourceforge.net/Doc/Release/ Expansion.html#Filename-Expansion>.

[Zsh-Tilde]「Zシェルマニュアル:14.7ファイル名の展開」、2015年12月、<http://zsh.sourceforge.net/Doc/Release/ Expansion.html#Filename-Expansion>。

Appendix A. Differences from Previous Specifications
付録A.以前の仕様との違い

The syntax definition in Section 2 inherits incremental differences from the general syntax of [RFC1738], as described by Appendix G of [RFC2396] and Appendix D of [RFC3986].

セクション2の構文定義は、[RFC2396]の付録Gおよび[RFC3986]の付録Dで説明されているように、[RFC1738]の一般的な構文からの差分を継承します。

According to the definition in [RFC1738], a file URL always started with the token "file://", followed by an (optionally blank) host name and a "/". The syntax given in Section 2 makes the entire authority component, including the double slashes "//", optional.

[RFC1738]の定義によると、ファイルURLは常にトークン「file://」で始まり、その後に(オプションで空白の)ホスト名と「/」が続きます。セクション2に示す構文では、二重スラッシュ「//」を含む権限コンポーネント全体がオプションになります。

Appendix B. Example URIs
付録B. URIの例

The syntax in Section 2 is intended to support file URIs that take the following forms:

セクション2の構文は、次の形式のファイルURIをサポートすることを目的としています。

Local files:

ローカルファイル:

o A traditional file URI for a local file with an empty authority. This is the most common format in use today. For example:

o 空の権限を持つローカルファイルの従来のファイルURI。これは、今日使用されている最も一般的な形式です。例えば:

      *  "file:///path/to/file"
        

o The minimal representation of a local file with no authority field and an absolute path that begins with a slash "/". For example:

o 権限フィールドのないローカルファイルの最小表現と、スラッシュ「/」で始まる絶対パス。例えば:

      *  "file:/path/to/file"
        

Non-local files:

非ローカルファイル:

o A non-local file with an explicit authority. For example:

o 明示的な権限を持つ非ローカルファイル。例えば:

      *  "file://host.example.com/path/to/file"
        
Appendix C. Similar Technologies
付録C.同様のテクノロジー

o The WHATWG URL specification [WHATWG-URL] defines browser behavior for a variety of inputs, including file URIs. As a living document, it changes to reflect updates in browser behavior. As a result, its algorithms and syntax definitions may or may not be consistent with this specification. Implementors should be aware of this possible discrepancy if they expect to share file URIs with browsers that follow the WHATWG specification.

o WHATWG URL仕様[WHATWG-URL]は、ファイルURIを含むさまざまな入力に対するブラウザーの動作を定義しています。生きたドキュメントとして、ブラウザの動作の更新を反映するように変更されます。その結果、そのアルゴリズムと構文定義は、この仕様と一致する場合としない場合があります。実装者は、WHATWG仕様に準拠したブラウザとファイルURIを共有することを期待している場合、この矛盾の可能性に注意する必要があります。

o The Universal Naming Convention (UNC) [MS-DTYP] defines a string format that can perform a similar role to the file URI scheme in describing the location of files, except that files located by UNC filespace selector strings are typically stored on a remote machine and accessed using a network protocol. Appendix E.3 lists some ways in which UNC filespace selector strings are currently made to interoperate with the file URI scheme.

o汎用名前付け規則(UNC)[MS-DTYP]は、UNCファイルスペースセレクター文字列によって検索されたファイルが通常リモートに保存されることを除いて、ファイルの場所を記述するファイルURIスキームと同様の役割を実行できる文字列形式を定義しますマシンであり、ネットワークプロトコルを使用してアクセスします。付録E.3は、UNCファイルスペースセレクター文字列がファイルURIスキームと相互運用するために現在行われているいくつかの方法を示しています。

o The Microsoft Windows API defines Win32 Namespaces [Win32-Namespaces] for interacting with files and devices using Windows API functions. These namespaced paths are prefixed by "\\?\" for Win32 File Namespaces and "\\.\" for Win32 Device Namespaces. There is also a special case for UNC file paths in Win32 File Namespaces, referred to as "Long UNC", using the prefix "\\?\UNC\". This specification does not define a mechanism for translating namespaced paths to or from file URIs.

o Microsoft Windows APIは、Windows API関数を使用してファイルやデバイスと対話するためのWin32名前空間[Win32-Namespaces]を定義しています。これらの名前空間付きパスには、Win32ファイルの名前空間の場合は「\\?\」、Win32デバイスの名前空間の場合は「\\。\」というプレフィックスが付いています。接頭辞「\\?\ UNC \」を使用した、「長いUNC」と呼ばれるWin32ファイル名前空間のUNCファイルパスの特殊なケースもあります。この仕様では、ファイルURIとの間で名前空間パスを変換するメカニズムは定義されていません。

Appendix D. System-Specific Operations
付録D.システム固有の操作

This appendix is not normative. It highlights some observed behaviors and provides system-specific guidance for interacting with file URIs and paths. This is not an exhaustive list of operating or file systems; rather, it is intended to illustrate certain types of interactions that might be encountered.

この付録は規範的ではありません。観察されたいくつかの動作を強調し、ファイルURIとパスを操作するためのシステム固有のガイダンスを提供します。これは、オペレーティングシステムまたはファイルシステムの完全なリストではありません。むしろ、遭遇する可能性のある特定のタイプの相互作用を示すことを目的としています。

D.1. POSIX Systems
D.1. POSIXシステム

In a POSIX file system, the root of the file system is represented as a directory with a zero-length name, usually written as "/"; the presence of this root in a file URI can be taken as given by the initial slash in the "path-absolute" rule.

POSIXファイルシステムでは、ファイルシステムのルートは、長さがゼロの名前を持つディレクトリとして表され、通常は「/」と記述されます。このルートがファイルURIに存在することは、「パス-絶対」ルールの最初のスラッシュで指定されていると見なすことができます。

Common UNIX shells such as the Bourne-Again SHell (bash) and Z SHell (zsh) provide a function known as "tilde expansion" [Bash-Tilde] or "filename expansion" [Zsh-Tilde], where a path that begins with a tilde character "~" can be expanded out to a special directory name. No such facility exists using the file URI scheme; a tilde in a file URI is always just a tilde.

Bourne-Again SHell(bash)やZ SHell(zsh)などの一般的なUNIXシェルは、「チルダ拡張」[Bash-Tilde]または「ファイル名拡張」[Zsh-Tilde]と呼ばれる機能を提供します。チルダ文字「〜」は、特別なディレクトリ名に展開できます。ファイルURIスキームを使用するそのような機能は存在しません。ファイルURI内のチルドは常に単なるチルドです。

D.2. DOS- and Windows-Like Systems
D.2. DOSおよびWindowsのようなシステム

When mapping a DOS- or Windows-like file path to a file URI, the drive letter (e.g., "c:") is typically mapped into the first path segment.

DOSまたはWindowsのようなファイルパスをファイルURIにマッピングする場合、ドライブ文字(「c:」など)は通常、最初のパスセグメントにマッピングされます。

Appendix E lists some nonstandard techniques for interacting with DOS- or Windows-like file paths and URIs.

付録Eは、DOSまたはWindowsのようなファイルパスとURIを操作するためのいくつかの非標準的な手法を示しています。

D.3. Mac OS X Systems
D.3. AS AS Xシステム

The Hierarchical File System Plus (HFS+) uses a nonstandard normalization form, similar to Normalization Form D [UAX15]. Take care when transforming HFS+ file paths to and from URIs (Section 4).

Hierarchical File System Plus(HFS +)は、Normalization Form D [UAX15]と同様に、非標準の正規化形式を使用します。 URIとの間でHFS +ファイルのパスを変換するときは注意してください(セクション4)。

D.4. OpenVMS Files-11 Systems
D.4. OpenVMS Files-11システム

When mapping a Virtual Memory System (VMS) file path to a file URI, the device name is mapped into the first path segment. Note that the dollars sign "$" is a reserved character per the definition in Section 2.2 of [RFC3986], so it should be percent-encoded if present in the device name.

仮想メモリシステム(VMS)ファイルパスをファイルURIにマッピングすると、デバイス名は最初のパスセグメントにマッピングされます。ドル記号「$」は、[RFC3986]のセクション2.2の定義による予約文字であるため、デバイス名に存在する場合はパーセントエンコードする必要があります。

If the VMS file path includes a node reference, that reference is used as the authority. Where the original node reference includes a user name and password in an access control string, they can be transcribed into the authority using the nonstandard syntax extension in Appendix E.1.

VMSファイルパスにノード参照が含まれている場合、その参照が権限として使用されます。元のノード参照のアクセス制御文字列にユーザー名とパスワードが含まれている場合、それらは、付録E.1の非標準構文拡張を使用して機関に転記できます。

Appendix E. Nonstandard Syntax Variations
付録E.非標準の構文バリエーション

These variations may be encountered by existing usages of the file URI scheme but are not supported by the normative syntax of Section 2.

これらのバリエーションは、ファイルURIスキームの既存の使用法で発生する可能性がありますが、セクション2の標準構文ではサポートされていません。

This appendix is not normative.

この付録は規範的ではありません。

E.1. User Information
E.1. ユーザー情報

It might be necessary to include user information such as a user name in a file URI, for example, when mapping a VMS file path with a node reference that includes an access control string.

たとえば、アクセス制御文字列を含むノード参照でVMSファイルパスをマッピングする場合、ファイルURIにユーザー名などのユーザー情報を含める必要がある場合があります。

To allow user information to be included in a file URI, the "file-auth" rule in Section 2 can be replaced with the following:

ユーザー情報をファイルURIに含めることを許可するには、セクション2の「file-auth」ルールを次のように置き換えることができます。

file-auth = "localhost" / [ userinfo "@" ] host

file-auth = "localhost" / [userinfo "@"]ホスト

This uses the "userinfo" rule from [RFC3986].

これは、[RFC3986]の "userinfo"ルールを使用します。

As discussed in the HP OpenVMS Systems Documentation <http://h71000.www7.hp.com/doc/84final/ba554_90015/ch03s09.html>, "access control strings include sufficient information to allow someone to break in to the remote account, [therefore] they create serious security exposure." In a similar vein, the presence of a password in a "user:password" userinfo field is deprecated by [RFC3986]. Take care when dealing with information that can be used to identify a user or grant access to a system.

HP OpenVMSシステムのドキュメント<http://h71000.www7.hp.com/doc/84final/ba554_90015/ch03s09.html>で説明されているように、「アクセス制御文字列には、誰かがリモートアカウントに侵入するのに十分な情報が含まれています。 [したがって]彼らは深刻なセキュリティ上の露出を作成します。」同様に、[user:password] userinfoフィールドにパスワードが存在することは、[RFC3986]で非推奨になっています。ユーザーの識別やシステムへのアクセスの許可に使用できる情報を扱うときは注意してください。

E.2. DOS and Windows Drive Letters
E.2. DOSおよびWindowsのドライブ文字

On Windows- or DOS-like file systems, an absolute file path can begin with a drive letter. To facilitate this, the "local-path" rule in Section 2 can be replaced with the following:

WindowsまたはDOSのようなファイルシステムでは、絶対ファイルパスをドライブ文字で始めることができます。これを容易にするために、セクション2の「local-path」規則を次のように置き換えることができます。

      local-path     = [ drive-letter ] path-absolute
        

drive-letter = ALPHA ":"

drive-letter = ALPHA ":"

The "ALPHA" rule is defined in [RFC5234].

「アルファ」ルールは[RFC5234]で定義されています。

This is intended to support the minimal representation of a local file in a DOS- or Windows-like environment, with no authority field and an absolute path that begins with a drive letter. For example:

これは、権限フィールドがなく、ドライブ文字で始まる絶対パスで、DOSまたはWindowsのような環境でローカルファイルの最小限の表現をサポートすることを目的としています。例えば:

   o  "file:c:/path/to/file"
        

URIs of the form "file:///c:/path/to/file" are already supported by the "path-absolute" rule.

「file:/// c:/ path / to / file」形式のURIは、「path-absolute」ルールですでにサポートされています。

Note that comparison of drive letters in DOS or Windows file paths is case insensitive. In some usages of file URIs, drive letters are canonicalized by converting them to uppercase; other usages treat URIs that differ only in the case of the drive letter as identical.

DOSまたはWindowsファイルパスのドライブ文字の比較では、大文字と小文字が区別されないことに注意してください。ファイルURIの一部の使用法では、ドライブ文字は大文字に変換することによって正規化されます。他の使用法では、ドライブ文字の場合のみ異なるURIを同一として扱います。

E.2.1. Relative Resolution
E.2.1. 相対解決

To mimic the behavior of DOS- or Windows-like file systems, relative references beginning with a slash "/" can be resolved relative to the drive letter when present; resolution of ".." dot segments (per Section 5.2.4 of [RFC3986]) can be modified to not ever overwrite the drive letter.

DOSまたはWindowsのようなファイルシステムの動作を模倣するために、スラッシュ「/」で始まる相対参照は、存在する場合、ドライブ文字を基準にして解決できます。 「..」ドットセグメントの解決([RFC3986]のセクション5.2.4に従って)は、ドライブ文字を上書きしないように変更できます。

For example:

例えば:

      base URI:   file:///c:/path/to/file.txt
      rel. ref.:  /some/other/thing.bmp
      resolved:   file:///c:/some/other/thing.bmp
        
      base URI:   file:///c:/foo.txt
      rel. ref.:  ../bar.txt
      resolved:   file:///c:/bar.txt
        

A relative reference starting with a drive letter would be interpreted by a generic URI parser as a URI with the drive letter as its scheme. Instead, such a reference ought to be constructed with a leading slash "/" character (e.g., "/c:/foo.txt").

ドライブ文字で始まる相対参照は、汎用URIパーサーによって、ドライブ文字をスキームとするURIとして解釈されます。代わりに、そのような参照は、先頭にスラッシュ「/」文字(たとえば、「/ c:/foo.txt」)を使用して作成する必要があります。

Relative references with a drive letter followed by a character other than a slash (e.g., "/c:bar/baz.txt" or "/c:../foo.txt") might not be accepted as dereferenceable URIs in DOS- or Windows-like systems.

ドライブ文字の後にスラッシュ以外の文字が続く相対参照(たとえば、 "/ c:bar / baz.txt"または "/c:../foo.txt")は、DOSで逆参照可能なURIとして受け入れられない場合がありますまたはWindowsのようなシステム。

E.2.2. Vertical Line Character
E.2.2. 縦線文字

Historically, some usages of file URIs have included a vertical line character "|" instead of a colon ":" in the drive letter construct. [RFC3986] forbids the use of the vertical line; however, it may be necessary to interpret or update old URIs.

歴史的に、ファイルURIの一部の使用法には縦線文字「|」が含まれていましたドライブ文字構成のコ​​ロン「:」の代わり。 [RFC3986]垂直線の使用を禁止します。ただし、古いURIを解釈または更新する必要がある場合があります。

For interpreting such URIs, the "auth-path" and "local-path" rules in Section 2 and the "drive-letter" rule above can be replaced with the following:

このようなURIを解釈するために、セクション2の「auth-path」および「local-path」規則と上記の「drive-letter」規則は、次のものに置き換えることができます。

      auth-path      = [ file-auth ] path-absolute
                     / [ file-auth ] file-absolute
        
      local-path     = [ drive-letter ] path-absolute
                     / file-absolute
        

file-absolute = "/" drive-letter path-absolute

file-absolute = "/"ドライブ文字パス-絶対

drive-letter = ALPHA ":" / ALPHA "|"

ドライブ文字= ALPHA ":" / ALPHA "|"

This is intended to support regular DOS or Windows file URIs with vertical line characters in the drive letter construct. For example:

これは、ドライブ文字構成に縦線文字を含む通常のDOSまたはWindowsファイルURIをサポートすることを目的としています。例えば:

   o  "file:///c|/path/to/file"
        
   o  "file:/c|/path/to/file"
        
   o  "file:c|/path/to/file"
        

To update such an old URI, replace the vertical line "|" with a colon ":".

このような古いURIを更新するには、縦線「|」を置き換えますコロン「:」付き。

E.3. UNC Strings
E.3. UNC文字列

Some usages of the file URI scheme allow UNC filespace selector strings [MS-DTYP] to be translated to and from file URIs, either by mapping the equivalent segments of the two schemes (hostname to authority, sharename+objectnames to path), or by mapping the entire UNC string to the path segment of a URI.

ファイルURIスキームの一部の使用法では、UNCファイルスペースセレクター文字列[MS-DTYP]を、2つのスキーム(ホスト名から機関、共有名+オブジェクト名からパス)の同等のセグメントをマッピングするか、またはUNC文字列全体をURIのパスセグメントにマッピングします。

E.3.1. <file> URI with Authority
E.3.1. 権限のある<file> URI

The following is an algorithmic description of the process of translating a UNC filespace selector string to a file URI by mapping the equivalent segments of the two schemes:

以下は、2つのスキームの同等のセグメントをマッピングすることにより、UNCファイルスペースセレクター文字列をファイルURIに変換するプロセスのアルゴリズムの説明です。

1. Initialize the URI with the "file:" scheme identifier.

1. 「file:」スキーム識別子を使用してURIを初期化します。

2. Append the authority:

2. 権限を追加します。

1. Append the "//" authority sigil to the URI.

1. "//"権限シギルをURIに追加します。

2. Append the host-name field of the UNC string to the URI.

2. UNC文字列のホスト名フィールドをURIに追加します。

3. Append the share-name:

3. 共有名を追加します。

1. Transform the share-name to a path segment (see Section 3.3 of [RFC3986]) to conform to the encoding rules of Section 2 of [RFC3986].

1. 共有名をパスセグメントに変換して([RFC3986]のセクション3.3を参照)、[RFC3986]のセクション2のエンコーディングルールに準拠します。

2. Append a delimiting slash character "/" and the transformed segment to the URI.

2. 区切りスラッシュ文字「/」と変換されたセグメントをURIに追加します。

4. For each object-name:

4. 各オブジェクト名について:

1. Transform the objectname to a path segment as above.

1. 上記のようにオブジェクト名をパスセグメントに変換します。

The colon character ":" is allowed as a delimiter before stream-name and stream-type in the file-name, if present.

コロン文字「:」は、存在する場合、ファイル名にストリーム名とストリームタイプの前の区切り文字として使用できます。

2. Append a delimiting slash character "/" and the transformed segment to the URI.

2. 区切りスラッシュ文字「/」と変換されたセグメントをURIに追加します。

For example, the UNC String:

たとえば、UNC文字列:

UNC String: \\host.example.com\Share\path\to\file.txt

UNC文字列:\\ host.example.com \ Share \ path \ to \ file.txt

would be transformed into the URI:

URIに変換されます。

      URI:          file://host.example.com/Share/path/to/file.txt
        

The inverse algorithm for translating a file URI to a UNC filespace selector string is left as an exercise for the reader.

ファイルURIをUNCファイルスペースセレクター文字列に変換するための逆アルゴリズムは、読者の課題として残されています。

E.3.2. <file> URI with UNC Path
E.3.2. <file> URIとUNCパス

It is common to encounter file URIs that encode entire UNC strings in the path, usually with all backslash "\" characters replaced with slashes "/".

パス内のUNC文字列全体をエンコードするファイルURIに遭遇することはよくあります。通常、すべてのバックスラッシュ「\」文字はスラッシュ「/」に置き換えられます。

To interpret such URIs, the "auth-path" rule in Section 2 can be replaced with the following:

このようなURIを解釈するには、セクション2の「auth-path」ルールを次のように置き換えることができます。

      auth-path      = [ file-auth ] path-absolute
                     / unc-authority path-absolute
        
      unc-authority  = 2*3"/" file-host
        
      file-host      = inline-IP / IPv4address / reg-name
        

inline-IP = "%5B" ( IPv6address / IPvFuture ) "%5D"

inline-IP = "%5B"(IPv6address / IPvFuture) "%5D"

This syntax uses the "IPv4address", "IPv6address", "IPvFuture", and "reg-name" rules from [RFC3986].

この構文は、[RFC3986]の「IPv4address」、「IPv6address」、「IPvFuture」、および「reg-name」ルールを使用します。

Note that the "file-host" rule is the same as "host" but with percent-encoding applied to "[" and "]" characters.

「file-host」ルールは「host」と同じですが、パーセント記号が「[」および「]」文字に適用されることに注意してください。

This extended syntax is intended to support URIs that take the following forms, in addition to those in Appendix B:

この拡張構文は、付録Bに加えて、次の形式のURIをサポートすることを目的としています。

Non-local files:

非ローカルファイル:

o The representation of a non-local file with an empty authority and a complete (transformed) UNC string in the path. For example:

o 空の権限と完全な(変換された)UNC文字列がパスにある非ローカルファイルの表現。例えば:

      *  "file:////host.example.com/path/to/file"
        

o As above, with an extra slash between the empty authority and the transformed UNC string, as per the syntax defined in [RFC1738]. For example:

o 上記のように、[RFC1738]で定義されている構文に従って、空の権限と変換されたUNC文字列の間に追加のスラッシュを付けます。例えば:

      *  "file://///host.example.com/path/to/file"
        

This representation is notably used by the Firefox web browser. See Bugzilla#107540 [Bug107540].

この表現は、特にFirefox Webブラウザーで使用されます。 Bugzilla#107540 [Bug107540]を参照してください。

It also further limits the definition of a "local file URI" by excluding any file URI with a path that encodes a UNC string.

また、UNC文字列をエンコードするパスを持つファイルURIを除外することにより、「ローカルファイルURI」の定義をさらに制限します。

E.4. Backslash as Separator
E.4. セパレータとしてのバックスラッシュ

Historically, some usages have copied entire file paths into the path components of file URIs. Where DOS or Windows file paths were thus copied, the resulting URI strings contained unencoded backslash "\" characters, which are forbidden by both [RFC1738] and [RFC3986].

歴史的に、一部の使用法では、ファイルパス全体をファイルURIのパスコンポーネントにコピーしてきました。このようにDOSまたはWindowsのファイルパスがコピーされた場合、結果のURI文字列には、エンコードされていないバックスラッシュ「\」文字が含まれていました。これは、[RFC1738]と[RFC3986]の両方で禁止されています。

It may be possible to translate or update such an invalid file URI by replacing all backslashes "\" with slashes "/" if it can be determined with reasonable certainty that the backslashes are intended as path separators.

円記号がパス区切り文字として意図されていることが合理的に確実であると判断できる場合、すべての円記号「¥」をスラッシュ「/」で置き換えることにより、このような無効なファイルURIを変換または更新できる可能性があります。

Appendix F. Collected Nonstandard Rules
付録F.収集された非標準ルール

Here are the collected syntax rules for all optional appendices, presented for convenience. This collected syntax is not normative.

ここに、便宜上提示された、すべてのオプションの付録について収集された構文規則を示します。この収集された構文は規範的ではありません。

file-URI = file-scheme ":" file-hier-part

file-URI = file-scheme ":" file-hier-part

      file-scheme    = "file"
        
      file-hier-part = ( "//" auth-path )
                     / local-path
        
      auth-path      = [ file-auth ] path-absolute
                     / [ file-auth ] file-absolute
                     / unc-authority path-absolute
        
      local-path     = [ drive-letter ] path-absolute
                     / file-absolute
        

file-auth = "localhost" / [ userinfo "@" ] host

file-auth = "localhost" / [userinfo "@"]ホスト

      unc-authority  = 2*3"/" file-host
        
      file-host      = inline-IP / IPv4address / reg-name
        

inline-IP = "%5B" ( IPv6address / IPvFuture ) "%5D"

inline-IP = "%5B"(IPv6address / IPvFuture) "%5D"

file-absolute = "/" drive-letter path-absolute

file-absolute = "/"ドライブ文字パス-絶対

drive-letter = ALPHA ":" / ALPHA "|"

ドライブ文字= ALPHA ":" / ALPHA "|"

This collected syntax is intended to support file URIs that take the following forms:

この収集された構文は、次の形式のファイルURIをサポートすることを目的としています。

Local files:

ローカルファイル:

o A traditional file URI for a local file with an empty authority. For example:

o 空の権限を持つローカルファイルの従来のファイルURI。例えば:

      *  "file:///path/to/file"
        

o The minimal representation of a local file with no authority field and an absolute path that begins with a slash "/". For example:

o 権限フィールドのないローカルファイルの最小表現と、スラッシュ「/」で始まる絶対パス。例えば:

      *  "file:/path/to/file"
        

o The minimal representation of a local file in a DOS- or Windows-based environment with no authority field and an absolute path that begins with a drive letter. For example:

o 権限フィールドのないDOSまたはWindowsベースの環境におけるローカルファイルの最小限の表現と、ドライブ文字で始まる絶対パス。例えば:

      *  "file:c:/path/to/file"
        

o Regular DOS or Windows file URIs with vertical line characters in the drive letter construct. For example:

o ドライブ文字構成に縦線文字を含む通常のDOSまたはWindowsファイルURI。例えば:

      *  "file:///c|/path/to/file"
        
      *  "file:/c|/path/to/file"
        
      *  "file:c|/path/to/file"
        

Non-local files:

非ローカルファイル:

o The representation of a non-local file with an explicit authority. For example:

o 明示的な権限を持つ非ローカルファイルの表現。例えば:

      *  "file://host.example.com/path/to/file"
        

o The "traditional" representation of a non-local file with an empty authority and a complete (transformed) UNC string in the path. For example:

o 空の権限と完全な(変換された)UNC文字列がパスにある非ローカルファイルの「従来の」表現。例えば:

      *  "file:////host.example.com/path/to/file"
        

o As above, with an extra slash between the empty authority and the transformed UNC string. For example:

o 上記のように、空のオーソリティと変換されたUNC文字列の間にスラッシュを追加します。例えば:

      *  "file://///host.example.com/path/to/file"
        

Acknowledgements

謝辞

Contributions from many members of the IETF and W3C communities -- notably Dave Crocker, Graham Klyne, Tom Petch, and John Klensin -- are greatly appreciated.

IETFとW3Cコミュニティの多くのメンバー(特にDave Crocker、Graham Klyne、Tom Petch、およびJohn Klensin)からの貢献は、非常に高く評価されています。

Additional thanks to Dave Risney, author of the informative IEBlog article <http://blogs.msdn.com/b/ie/archive/2006/12/06/file-uris-in-windows.aspx>, and Dave Thaler for their early comments and suggestions; and to Paul Hoffman, whose earlier work served as an inspiration for this undertaking.

有益なIEBlog記事<http://blogs.msdn.com/b/ie/archive/2006/12/06/file-uris-in-windows.aspx>の作者であるDave Risney氏、およびDave Thaler氏に感謝します。彼らの初期のコメントと提案。そして、その初期の仕事がこの事業のインスピレーションとなったポール・ホフマンに。

Author's Address

著者のアドレス

Matthew Kerwin Queensland University of Technology Victoria Park Road Kelvin Grove, QLD 4059 Australia

マシューカーウィンクイーンズランド工科大学ビクトリアパークロードケルビングローブQLD 4059オーストラリア

   Email: matthew.kerwin@qut.edu.au