Manual:Title.php/ja

MediaWiki ソフトウェアの  クラスは 記事タイトル を表し、様々な目的で使用されます. 例えば:
 * 人間に読めるテキスト形式の記事タイトルとして
 * 記事にアクセスするための URL 中で
 * 記事への Wikitext リンク
 * 記事データベースへのキー

このクラスでは、これらのいずれかの書式のインスタンスが生成されます. インスタンスが生成されると、タイトルを属性に応じて他の書式またはクエリとして取得できます. は、不変 "値" クラスとして設計されているため、ミューテータ関数は存在しません.

のインスタンスを生成するには、以下のいずれかの静的ファクトリメソッドを呼び出します:
 * ("THIS IS NOT THE FUNCTION YOU WANT. Use Title::newFromText.")
 * (returns an array of Titles)
 * Create a new Title from a namespace index and a DB key. Returns null on an error.
 * ("THIS IS NOT THE FUNCTION YOU WANT. Use Title::newFromText.")
 * (returns an array of Titles)
 * Create a new Title from a namespace index and a DB key. Returns null on an error.
 * Create a new Title from a namespace index and a DB key. Returns null on an error.

インスタンスが生成されると、他の非静的アクセサメソッドが使用可能になります. 例えば、 、 、 等です.

If you have a Title object, you can get a:
 * Article object, using
 * WikiPage object, using

タイトルの構成
タイトルは、省略可能な インターウィキ 接頭子 （例えば、mediawiki.org ページを指す "m:" や、ウィキペディア 記事を指す "w:"）、省略可能な名前空間 （例えば "Manual:"）、記事名、の順序で構成されます.

インターウィキ接頭子と名前空間
インターウィキ接頭子と名前空間は、どちらも同じ記述規則に従います:
 * 先頭は文字であること
 * 末尾はコロンであること
 * 数字、文字、空白、アンダースコアのみ使用可能
 * 空白とアンダースコアは区別されない
 * 大小文字は区別されない

インターウィキ接頭子および名前空間は、既定値もしくは設定値として MediaWiki システムに対して指定されたもののみ認識されます.

例: 本 Wiki では、"w:Name" はウィキペディアの記事 "Name" へのリンクとなります. これは、"w" がインターウィキ接頭子として認識されるためです. タイトル "talk:Name" は、現在の Wiki の "talk" 名前空間にある記事 "Name" へのリンクとなります. これは、"talk</tt>" が名前空間として認識されるためです. インターウィキ接頭子と名前空間の両方を記述することも可能で、その場合はインターウィキ接頭子を先に記述します （例: "w:talk:name</tt>"）.

タイトルの先頭文字がコロンで始まる場合は、接頭子はスキャンされず、コロンもタイトルが処理される前に取り除かれます. この規則により、名前にコロンを含む記事を記述することが可能になります. "大腸菌 O127:H7</tt>" や "2001: A Space Odyssey" 等のタイトルは、そのままでも有効です. これは、"大腸菌 O157</tt>" および "2001</tt>" は、有効なインターウィキ接頭子または名前空間ではないためです.

記事名
記事名では、空白とアンダースコアは同じものとして扱われ、それぞれ文脈に応じて適切に変換されます （URL や データベースキーではアンダースコア、平文では空白）. 全ての場所で 0x80..0xFF 領域の "拡張" 文字を、有効な文字として使用できます. これらの文字は URL ではエンコードされます. テキストやデータベースキーで使用される場合は、拡張文字は URL エンコード されません. その他の文字として、ASCII 文字、数字、ハイフン、カンマ、ピリオド、アポストロフィ、括弧、およびコロンが使用できます. 左記以外の ASCII 記号は使用できず、もし使用した場合は取り除かれます （これらの文字は、ブラウザが URL の解釈に失敗する原因となる恐れがあります）.

正規形
The canonical form of a title will always be returned by the object. Canonicalization involves the following:


 * Certain Unicode directional characters (left-to-right mark, etc.) are stripped, since that usually results from errant copy-and-paste.
 * Everything from #</tt> onward is stripped, since that's used for section links.
 * Sequences of underscores and/or certain whitespace characters are collapsed into a single underscore (for the URL and DBkey forms) or a single space (for the text form). At the beginning or end of the title (or namespace or interwiki prefix), these are stripped.
 * Recognized interwiki prefixes are canonicalized, meaning that they're put entirely in lowercase.
 * Recognized namespace-names are canonicalized, meaning that the first character is capitalized and subsequent characters are put in lowercase. (This is not done for interwiki-links, however.)
 * Depending on the wiki and the namespace, the first character of a title may be capitalized. (This is not done for interwiki-links, however.)
 * For links to user-pages of anonymous users, the IP address is canonicalized.
 * The canonicalization process also includes some validation logic to reject various kinds of invalid titles (such as ones that are too long, or that contain illegal characters).

&#x5B;code link&#x5D;

については若干の説明が必要です: "内部" 記事に対しては、 は記事が存在する場合は "ページ ID" フィールドを、存在しなければ 0 を返します. 外部記事に対しては常に 0 を返します. リクエスト中に生成された、タイトルの全てのインスタンスの ID は、全てキャッシュされます. 従って、多数の内部リンクを含む Wikitext をレンダリングしながら、ページ ID を素早く検索することが可能です.

使用例
指定したページが既に存在するかどうかを調べる: Create a new Title from text, such as what one would find in a link. Decodes any HTML entities in the text. Spaces, prefixes, and an initial ':' indicating the main namespace are accepted. Note that if the page does not exist, this will not create it. For that, see Manual:Article.php.

Functions
Many of these functions are used by Manual:CoreParserFunctions.php to generate magic words.

getArticleID
Get the article ID for this Title from the link cache, adding it if necessary

getBaseText
Get the base page name, i.e. the leftmost part excluding namespace and before any slashes, without converting spaces to underscores. See magic words and.

getText
Gets the text form (spaces not underscores) of the main part, i.e. the title excluding namespace, but including slashes and everything after. See magic word.

getDBKey
Get the main part (i.e. the title excluding namespace) with underscores.

getPrefixedDBKey
Get the prefixed database key form with underscores.

getFragment
Get the Title fragment (i.e. the bit after the #) in text form.

getFullText
Get the prefixed title with spaces, plus any fragment (part beginning with '#').

getPartialURL
Get the URL-encoded form of the main part. See magic word.

getFullURL
Get a real URL referring to this title, with interwiki link and fragment.

getLocalURL
Get a URL with no fragment or server name.

getPrefixedText
Get the prefixed title with spaces. This is the form usually used for display. See magic word.

getPrefixedUrl
Get a URL-encoded title (not an actual URL) including interwiki. See magic word.

getSubjectNsText
Get the namespace text of the subject (rather than talk) page. See magic words and.

getSubjectPage
Get a title object associated with the subject page of this talk page. See magic word.

getSubpageText
Get the lowest-level subpage name, i.e. the rightmost part after any slashes. See magic word.

getSubpageUrlForm
Get a URL-encoded form of the subpage text. See magic word.

getTalkNsText
Get the namespace text of the talk page. See magic word and.

getTalkPage
Get a Title object associated with the talk page of this article. See and.

getNamespace
Get the namespace index. See.