aplication.xml

Application configurations are used to specify the global behavior of an application. They include specification of path aliases, namespace usages, module and service configurations, and parameters. アプリケーションコンフィグは、アプリケーションのグローバルな動作を指定するために使われます。 アプリケーションコンフィグでは、パスエイリアス、namespaceの使い方、モジュールとサービスのコンフィグ、およびパラメータについての指定ができます。 Configuration for an application is stored in an XML file named application.xml which should be located under the application base path. Its format is shown in the following. Complete specification of application configurations can be found in the DTD and XSD files. アプリケーションについてのコンフィグは application.xml と名付けられたXMLファイルの中に保存されています。(そのファイルは、アプリケーションのベースパスの下に位置する必要があります)。 そのフォーマットは以下の様になります。アプリケーションコンフィグの完全な仕様はDTDXSDファイルをご覧ください。
<application PropertyName="PropertyValue" ...>
 <paths>
  <alias id="AliasID" path="AliasPath" />
   <using namespace="Namespace" />
 </paths>
 <modules>
  <module id="ModuleID" class="ModuleClass"  PropertyName="PropertyValue" ... />
  </modules>
  <parameters>
   <parameter id="ParameterID"
              class="ParameterClass
              "PropertyName="PropertyValue" ... />
  </parameters>
  <include file="path.to.extconfig" when="PHP expression" />
   <services>
    <service id="ServiceID"
             class="ServiceClass"
             PropertyName="PropertyValue" ... />
   </services>
</application>
The outermost element <application> corresponds to the TApplication instance. The PropertyName="PropertyValue" pairs specify the initial values for the properties of TApplication. 最も外側のエレメント<application>はTApplicationのインスタンスに相当します。PropertyName="PropertyValue"の箇所はTApplicationのプロパティの初期値を指定しています。
The <path>element contains the definition of path aliases and the PHP inclusion paths for the application. Each path alias is specified via an <alias> whose path attribute takes an absolute path or a path relative to the directory containing the application configuration file. The <using> element specifies a particular path (in terms of namespace) to be appended to the PHP include paths when the application runs. PRADO defines two default aliases: System and Application. The former refers to the PRADO framework root directory, and the latter refers to the directory containing the application configuration file.

<path>エレメントはパスエイリアスとアプリケーションのためのPHPインクルードパスの定義を内包しています。 各パスエイリアスは<alias>によって指定されます。この<alias>のパス属性は、アプリケーションコンフィグを含んでいるディレクトリへの絶対パスもしくは相対パスを示しています。 この<using>エレメントは、特定のパスを(namespaceを使って)指定し、アプリケーションが実行されるときに、PHPのインクルードパスにそのパスを追加します。 PRADOは2つのデフォルトエイリアスを定義しています: SystemとApplication です。SystemはPRADOフレームワークのルートディレクトリを参照し、Application はアプリケーションコンフィグを含んでいるディレクトリを参照します。

The <modules> element contains the configurations for a list of modules. Each module is specified by a <module>element. Each module is uniquely identified by the id attribute and is of type class. The PropertyName="PropertyValue" pairs specify the initial values for the properties of the module.

<modules>エレメントはモジュールのリストのコンフィグを含んでいます。 各モジュールは<module>エレメントによって指定されます。 各モジュールはid属性によってユニークに識別されていて、且つ、クラスタイプをもっています。 PropertyName="PropertyValue" の式はモジュールプロパティの初期値を指定しています。 The <parameters>element contains a list of application-level parameters that are accessible from anywhere in the application. You may specify component-typed parameters like specifying modules, or you may specify string-typed parameters which take a simpler format as follows,

<parameter id="ParameterID" value="ParameterValue" />
Note, if the value attribute is not specified, the whole parameter XML node (of type TxmlElement) will be returned as the parameter value. In addition, the System.Util.TParameter Module module provides a way to load parameters from an external XML file. See more details in its API documentation.

<parameters>エレメントは、アプリケーションレベルのパラメータのリストを含んでいます。このパラメーターは、アプリケーションの中のどこからでも得ることが可能です。 その際にはモジュールを指定するようなコンポーネントタイプのパラメータを指定してもよいし、次のような、よりシンプルなフォーマットのストリングタイプのパラメータを指定しても良いです。

<parameter id="ParameterID" value="ParameterValue" />
注意!もし、value 属性が指定されないならば、すべてのパラメータXMLノード(TxmlElementのタイプ)が、そのパラメータ値として返されます。さらに、System.Util.TParameterModule モジュールは、外部のXMLファイルからパラメータをロードする方法を提供します。もっと詳しい内容については、APIドキュメントを見てください。 The <include>element allows one to include external configuration files. It has been introduced since v3.1.0. The file attribute specifies the external configuration file in namespace format. The extension name of the file must be .xml. The when attribute contains a PHP expression and is optional (defaults to true). Only when the expression evaluates true, will the external configuration file be included. The context of the expression is the application, i.e., $this in the expression would refer to the application object.

<include>エレメントには、外部のコンフィグファイルを含むことができます。このエレメントは、v3.1.0 から導入されました。このエレメントの file 属性は、外部のコンフィグをnamespaceフォーマットで指定します。 ファイルの拡張子は .xml でなければなりません。when 属性は、php表現を含んでおり、オプションです(初期値はtrueとなります)。表現が正常を評価する時だけに、外部コンフィグファイルは含まれます。この表現のコンテキストはそのアプリケーションとなり、すなわち、表現における$this はアプリケーションオブジェクトを参照します。

The <service> element is similar to the <modules> element. It mainly specifies the services provided by the application. Within a <service> element, one can have any of the above elements. They will be effective only when the corresponding service is being requested.

<serviece>エレメントは<modules>エレメントに類似しています。 それは主にアプリケーションによって提供されたサービスを指定します。<service>エレメントの中には、上記のエレメント要素のいれについても設置可能です。それらのエレメントは、そのエレメントに対応するサービスが要求されている時だけに、効果的になります。

An external configuration file has the same format as described above. Although the name of the root element does not matter, it is recommended to <configuration> . External configurations will append to the main configuration. For example, if a path alias is specified in an external configuration, it will become available in addition to those aliases specified in the main configuration. 外部のコンフィグファイルは上記で説明したものと同じフォーマットを持っています。ルートエレメントの名前は重要でないですが、をお勧めします。外部のコンフィグはメインのコンフィグに付加されます。例えば、パスエイリアスが外部のコンフィグの中で指定されたとすると、それはメインのコンフィグの中で指定されたエイリアスに加えて可能になるでしょう。 By default without explicit configuration, a PRADO application will load a few core modules, such as THttpRequest, THttpResponse, etc. It will also provide the TPageService as a default service. Configuration and usage of these modules and services are covered in individual sections of this tutorial. Note, if your application takes default settings for these modules and service, you do not need to provide an application configuration. However, if these modules or services are not sufficient, or you want to change their behavior by configuring their property values, you will need an application configuration. 明示的なコンフィグのない初期状態では、PRADOアプリケーションはTHttpRequest、THttpResponseなどなどのいくつかの中心的なモジュールをロードします。この状態においては、また、デフォルトサービスとしてTPageServiceを提供するでしょう。これらのモジュールとサービスのコンフィギュレーションと使用方法は、このチュートリアルの個々のセクションの中でカバーされています。あなたのアプリケーションがこれらのモジュールとサービスを初期設定とするならば、アプリケーションコンフィグをを提供する必要がないことに注意してください。逆に、これらのモジュールまたはサービスが十分でないか、それらのプロパティ値を設定することによってそれらの行動を変更したいならば、アプリケーションコンフィグが必要となってきます。