[PSML] PSML

PSML is an acronym for Portal Structure Markup Language. It was created to allow content structure and abstraction within Jetspeed. PSML defines how portlets are aggregated, layed out, and decorated on a portal page. Note that page layout is not a part of the Java Portlet Standard API. Thus PSML is a Jetspeed-specific implementation. Also note that PSML in Jetspeed-2 is different from PSML in Jetspeed-1. This document can be used as a reference guide to the elements of a PSML resource.

PSML は Portal Structure Markup Language の頭文字を取った物です。PSML は Jetspeed 内のコンテンツの構造化と抽象化を行うために作成されます。PSML はポータルページ上でポートレットがどのように集約され、レイアウトされ、装飾されるかを定義します。ページレイアウトは、Java ポートレット標準 API の守備範囲ではないことに注意してください。ですので、PSML は Jetspeed 特有の実装です。そして、Jetspeed 2 の PSML は Jetspeed 1 の PSML とも違うことに注意してください。このドキュメントは PSML リソースの要素のリファレンスガイドとして使えます。

PSML files also capture other portal site information related to pages, folders, links, and global security constraints. Each of these primary PSML elements are captured in separate documents arranged in a hierarchy of directories in the file system. Typically, this directory is accessed as a resource at /WEB-INF/pages within the jetspeed web application.

PSML ファイルは、ページ、フォルダ、リンクや大域的なセキュリティ制限と関係する他のポータルサイトの情報も保持します。これらの主要な PSML の要素のそれぞれは、ファイルシステム上のディレクトリ構造内に配置された別々のドキュメント内に保存されます。一般的に、このディレクトリは Jetspeed ウェブアプリケーション内の /WEB-INF/pages にあるリソースとしてアクセスされます。

Here is an example PSML file for a portal site page, (*.psml):

以下にポータルサイトの ページ 用の PSML ファイル (*.psml) の例を示します。

<?xml version="1.0" encoding="UTF-8"?>
<page>
  <!-- page info -->
  <title>Welcome to Jetspeed 2</title>
  <metadata name="title" xml:lang="fr">Ma Premiere Page de PSML</metadata>
  <metadata name="title" xml:lang="es">¡Bienvenido a Jetspeed 2!</metadata>
  <metadata name="title" xml:lang="hu">Köszönti a Jetspeed 2!</metadata>

  <!-- page decoration -->
  <defaults skin="orange" layout-decorator="tigris" portlet-decorator="tigris"/>

  <!-- page fragments -->
  <fragment id="100393" type="layout" name="jetspeed-layouts::VelocityOneColumn">
    <fragment id="100939" type="portlet" name="j2-admin::LocaleSelector">
      <property layout="OneColumn" name="row" value="0"/>
    </fragment>                                
    <fragment id="100345" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
      <property layout="OneColumn" name="row" value="1"/>
      <property layout="TwoColumns" name="sizes" value="33%,66%"/>
      <fragment id="100121" type="portlet" name="j2-admin::LoginPortlet">
        <property layout="TwoColumns" name="row" value="0"/>
        <property layout="TwoColumns" name="column" value="0"/>
      </fragment>                                
      <fragment id="100171" type="portlet" name="demo::UserInfoTest">
        <property layout="TwoColumns" name="row" value="0"/>
        <property layout="TwoColumns" name="column" value="1"/>
      </fragment>    
    </fragment>
  </fragment>

  <!-- security constraints -->
  <security-constraints>
    <security-constraints-ref>public-view</security-constraints-ref>
  </security-constraints>
</page>
<?xml version="1.0" encoding="UTF-8"?>
<page>
  <!-- ページの情報 -->
  <title>Welcome to Jetspeed 2</title>
  <metadata name="title" xml:lang="fr">Ma Premiere Page de PSML</metadata>
  <metadata name="title" xml:lang="es">¡Bienvenido a Jetspeed 2!</metadata>
  <metadata name="title" xml:lang="hu">Köszönti a Jetspeed 2!</metadata>

  <!-- ページの装飾 -->
  <defaults skin="orange" layout-decorator="tigris" portlet-decorator="tigris"/>

  <!-- ページフラグメント -->
  <fragment id="100393" type="layout" name="jetspeed-layouts::VelocityOneColumn">
    <fragment id="100939" type="portlet" name="j2-admin::LocaleSelector">
      <property layout="OneColumn" name="row" value="0"/>
    </fragment>                                
    <fragment id="100345" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
      <property layout="OneColumn" name="row" value="1"/>
      <property layout="TwoColumns" name="sizes" value="33%,66%"/>
      <fragment id="100121" type="portlet" name="j2-admin::LoginPortlet">
        <property layout="TwoColumns" name="row" value="0"/>
        <property layout="TwoColumns" name="column" value="0"/>
      </fragment>                                
      <fragment id="100171" type="portlet" name="demo::UserInfoTest">
        <property layout="TwoColumns" name="row" value="0"/>
        <property layout="TwoColumns" name="column" value="1"/>
      </fragment>    
    </fragment>
  </fragment>

  <!-- セキュリティ制限 -->
  <security-constraints>
    <security-constraints-ref>public-view</security-constraints-ref>
  </security-constraints>
</page>

Here is an example PSML file that defines portal site folder, (folder.metadata):

以下に、ポータルサイトの フォルダ (folder.metadata) 用の定義を行う PSML ファイルの例を示します。

<?xml version="1.0" encoding="UTF-8"?>
<folder>
  <!-- folder description -->
  <title>Root Folder</title>  
  <metadata name="title" xml:lang="fr">Répertoire racine</metadata>
  <metadata name="title" xml:lang="es">Carpeta raiz</metadata>

  <!-- order of documents in folder -->
  <document-order>Jetspeed2.link</document-order>
  <document-order>Jetspeed2Wiki.link</document-order>
  <document-order>apache_portals.link</document-order>
  <document-order>apache.link</document-order>

  <!-- portal site menus -->
  <menu name="page-navigations">
    <separator>
      <text>Top Pages</text>
      <metadata name="text" xml:lang="fr">Page haut</metadata>
      <metadata name="text" xml:lang="es">Páginas más populares</metadata>
    </separator>
    <options>/Administrative</options>
    <separator>
      <text>Profiled Pages</text>
      <metadata name="text" xml:lang="es">Páginas del Perfil</metadata>
    </separator>
    <options regexp="true">/p[0-9][0-9][0-9].psml</options>
    <separator>
      <text>Non Java Pages</text>
      <metadata name="text" xml:lang="es">Ejemplos sin java</metadata>
    </separator>
    <options>/non-java</options>
  </menu>

  <!-- security constraints -->
  <security-constraints>
    <security-constraints-ref>public-view</security-constraints-ref>
  </security-constraints>
</folder>
<?xml version="1.0" encoding="UTF-8"?>
<folder>
  <!-- フォルダの説明 -->
  <title>Root Folder</title>  
  <metadata name="title" xml:lang="fr">Répertoire racine</metadata>
  <metadata name="title" xml:lang="es">Carpeta raiz</metadata>

  <!-- フォルダ内のドキュメントの順序 -->
  <document-order>Jetspeed2.link</document-order>
  <document-order>Jetspeed2Wiki.link</document-order>
  <document-order>apache_portals.link</document-order>
  <document-order>apache.link</document-order>

  <!-- ポータルサイトのメニュー -->
  <menu name="page-navigations">
    <separator>
      <text>Top Pages</text>
      <metadata name="text" xml:lang="fr">Page haut</metadata>
      <metadata name="text" xml:lang="es">Páginas más populares</metadata>
    </separator>
    <options>/Administrative</options>
    <separator>
      <text>Profiled Pages</text>
      <metadata name="text" xml:lang="es">Páginas del Perfil</metadata>
    </separator>
    <options regexp="true">/p[0-9][0-9][0-9].psml</options>
    <separator>
      <text>Non Java Pages</text>
      <metadata name="text" xml:lang="es">Ejemplos sin java</metadata>
    </separator>
    <options>/non-java</options>
  </menu>

  <!-- セキュリティ制限 -->
  <security-constraints>
    <security-constraints-ref>public-view</security-constraints-ref>
  </security-constraints>
</folder>

Here is an example PSML file for a portal site link, (*.link):

以下に、ポータルサイトの リンク (*.link) 用の PSML ファイルの例を示します。

<?xml version="1.0" encoding="UTF-8"?>
<link target="top">
  <!-- link description -->
  <title>Jetspeed 2 Home Page</title>
  <url>http://portals.apache.org/jetspeed-2/</url>
  <metadata name="title" xml:lang="es">Jetspeed 2</metadata>
</link>
<?xml version="1.0" encoding="UTF-8"?>
<link target="top">
  <!-- リンクの説明 -->
  <title>Jetspeed 2 Home Page</title>
  <url>http://portals.apache.org/jetspeed-2/</url>
  <metadata name="title" xml:lang="es">Jetspeed 2</metadata>
</link>

Here is an example PSML file for the portal site page security, (page.security):

以下に、ポータルサイトの ページのセキュリティ (page.security) 用の PSML ファイルの例を示します。

<?xml version="1.0" encoding="UTF-8"?>
<page-security>
  <!-- global admin constraints -->
  <security-constraints-def name="admin">
    <security-constraint>
      <roles>admin</roles>
      <permissions>view, edit</permissions>
    </security-constraint>
  </security-constraints-def>
  <global-security-constraints-ref>admin</global-security-constraints-ref>

  <!-- public constraints -->
  <security-constraints-def name="public-view">
    <security-constraint>
      <users>*</users>
      <permissions>view</permissions>
    </security-constraint>
  </security-constraints-def>
  <security-constraints-def name="public-edit">
    <security-constraint>
      <users>*</users>
      <permissions>view, edit</permissions>
    </security-constraint>
  </security-constraints-def>
</page-security>
<?xml version="1.0" encoding="UTF-8"?>
<page-security>
  <!-- 大域的な管理者の制限 -->
  <security-constraints-def name="admin">
    <security-constraint>
      <roles>admin</roles>
      <permissions>view, edit</permissions>
    </security-constraint>
  </security-constraints-def>
  <global-security-constraints-ref>admin</global-security-constraints-ref>

  <!-- パブリックな制限 -->
  <security-constraints-def name="public-view">
    <security-constraint>
      <users>*</users>
      <permissions>view</permissions>
    </security-constraint>
  </security-constraints-def>
  <security-constraints-def name="public-edit">
    <security-constraint>
      <users>*</users>
      <permissions>view, edit</permissions>
    </security-constraint>
  </security-constraints-def>
</page-security>

[Page] ページ

The <page> element is a simple container to hold other PSML elements associated with a portal site page. This element is persisted as a file with a '.psml' extension in the appropriate file system directory associated with the parent folder. There are two valid attributes for the page element:

<page> 要素は、ポータルサイトのページに関連する他の PSML 要素を保持するための単純な入れ物です。この要素は、親であるフォルダを構成する適切なファイルシステムディレクトリ内に、'.psml' という拡張子を持つファイルとして存在します。 2 つの有効な属性がページエレメントの属性として存在します。

AttributeDescription
hiddenA boolean attribute used to indicate that a page should not appear in portal site menus or other navigational elements.
versionA general purpose version tracking attribute. Not currently used by Jetspeed2.
属性説明
hiddenページがポータルサイトのサイトメニューまたは他のナビゲーション用の要素に表れるかどうかを指示するための真偽値の属性。
version一般的な目的のバージョントラッキングのための属性。Jetspeed 2 では現在使われていません。

The <page> element contains a number of other PSML elements:

<page> 要素は多くの他の PSML 要素を含みます。

ElementDescription
title?Simple element containing text for the default page title. The title of the page is considered its long description and is used as rollover text in some decorators if the short title is available for the menu text. If not specified, Jetspeed2 will attempt to define a title from the name of the file that contains the page element.
short-title?Optional simple element containing text of the default short title for the page. The short title, if available, is used as menu text in some decorators. If not specified, the title text is used.
defaultsSpecifies the decorations for the page and its fragments. Defaults are required for each page.
fragmentThe root of the fragment hierarchy. All pages require a root Fragment.
metadata*Optionally specifies locale specific titles and short titles for the page.
menu*Optionally specifies additional or overrides inherited menu definitions for the page.
security-constraints?Optionally defines inline security constraints for the page. If not specified, the page inherits the security constraints effective in the parent folder.
要素説明
title?デフォルトのページタイトルを表すテキストを含む単純な要素。ページのタイトルは、その長い説明とみなされます。もしメニューテキスト用の短いタイトルが利用可能であれば、一部のデコレータでロールオーバー (訳注:マウスポインタがHTML文書の中の要素の上にくると、その要素が変化する仕組みのこと) 用のテキストとして使われます。もし指定されていなければ、Jetspeed 2 は page 要素を含むファイルのファイル名からタイトルを決めようと試みます。
short-title?ページのデフォルトの短いタイトルのテキストを含む単純で省略可能な要素。短いタイトルは、もし利用可能であれば、一部のデコレータ内のメニューテキストとして使われます。もし指定されない場合は title のテキストが使われます。
defaultsページとそのフラグメントのための装飾を指定します。defaults はページ毎に必要です。
fragmentフラグメントの階層構造のルート。全てのページにルートのフラグメントが必要です。
metadata*省略可能の指定である、ページ用のロケール特有のタイトルと短いタイトル。
menu*省略可能の指定である、ページ用の追加または上書きされた継承したメニュー定義の指定。
security-constraints?省略可能の定義である、ページ用のインラインのセキュリティ制限の定義。もし指定されなければ、ページは親フォルダ内の有効なセキュリティ制限を継承します。

例: イントロで示した例を参照してください。

[Defaults] デフォルト

The page <defaults> element defines the default layout decorator and default portlet decorator. The default layout decorator is applied to all layout fragments which do NOT have a decorator attribute. The default portlet decorator is applied to all portlet fragments which do NOT have a decorator attribute. There are three valid attributes on the defaults element:

ページ内の <defaults> 要素は、デフォルトのレイアウトデコレータと、デフォルトのポートレットデコレータを定義します。デフォルトのレイアウトデコレータは、デコレータ属性を持たない全てのレイアウトフラグメントに対して適用されます。デフォルトのポートレットデコレータは、デコレータ属性を持たない全てのポートレットフラグメントに対して適用されます。defaults 要素には 3 つの有効な属性があります。

AttributeDescription
layout-decoratorThe name of the layout decorator used to render the page. This attribute is required.
portlet-decoratorThe name of the default portlet decorator used to render the page fragments. This attribute is optional, but is almost always set.
skinA general purpose decorator attribute that can be referenced in the decorators to control page and fragment presentation. Not currently used by Jetspeed2.
AttributeDescription
layout-decoratorページをレンダリングするときに使うレイアウトデコレータの名前。この属性は必須です。
portlet-decoratorページフラグメントをレンダリングするときに使うデフォルトのポートレットデコレータの名前。この属性は省略可能ですが、ほとんどいつも設定します。
skinページやフラグメントの表示を制御するためにデコレータ内で参照される一般的な目的のデコレータ属性。現時点では Jetspeed 2 では使用していません。

Example:

例:

<page>
  ...
  <defaults skin="orange" layout-decorator="tigris" portlet-decorator="tigris"/>
  ...
</page>
<page>
  ...
  <defaults skin="orange" layout-decorator="tigris" portlet-decorator="tigris"/>
  ...
</page>

[Layout Fragments] レイアウトフラグメント

The page layout <fragment> element is a hierarchical container used to hold portlet fragments and nested layout fragments. The root fragment of a page must be a layout fragment, even when only one portlet fragment is part of the page. Layout fragments are subject to layout of the parent layout fragment and thus support the 'row' and 'column' layout properties. In addition, they also support the 'sizes' layout property used to control multicolumn layout proportions. There are 3 required attributes for this element:

ページ のレイアウト <fragment> 要素は階層構造のコンテナです。これは ポートレットフラグメントと、階層化されたレイアウトフラグメントを保持するのに使われます。ページのルートのフラグメントは、ページに 1 つしかポートレットがないときでも、レイアウトフラグメントでなければなりません。レイアウトフラグメントは親となるレイアウトフラグメントのレイアウトに従属します。なので "row" と "column" の レイアウトプロパティをサポートします。加えて、レイアウトフラグメントは 'sizes' レイアウトプロパティもサポートします。これは、複数列のレイアウトの列の割合をコントロールするのに使われます。この要素には 3 つの必須の属性があります。

AttributeDescription
idThe required id is used to identify a fragment and must be unique across all fragments defined within the site. The value is opaque to Jetspeed2 and can follow any convention to guarantee uniqueness. Since fragments may be cached internally by Jetspeed2, any edits to exiting pages may require new ids to ensure the modifications are taken by Jetspeed2.
typeThis required attribute must be set to 'layout' for all layout fragments.
nameThe required name of the portlet used to implement the fragment layout. The portlet name generally takes the form of 'portlet-app-id:portlet-id' as specified in the portlet.xml files. Here are the supported Jetspeed2 layout portlet names:
  • jetspeed-layouts::FrameLayoutPortlet
  • jetspeed-layouts::VelocityOneColumn
  • jetspeed-layouts::VelocityOneColumnNoActions
  • jetspeed-layouts::VelocityThreeColumns
  • jetspeed-layouts::VelocityThreeColumnsNoActions
  • jetspeed-layouts::VelocityThreeColumnsTable
  • jetspeed-layouts::VelocityTwoColumns
  • jetspeed-layouts::VelocityTwoColumns2575
  • jetspeed-layouts::VelocityTwoColumns2575NoActions
  • jetspeed-layouts::VelocityTwoColumnsNoActions
  • jetspeed-layouts::VelocityTwoColumnsSmallLeft
  • jetspeed-layouts::VelocityTwoColumnsSmallLeftNoActions
  • jetspeed-layouts::VelocityTwoColumnsTable
属性説明
id必須である id は、フラグメントを特定するのに使います。そして、サイト内で定義される全てのフラグメントに渡ってユニークでなければなりません。この値は Jetspeed2 に対して透過的でなく、一意性を保証するためのどのような仕様にも従うことが可能です。フラグメントは Jetspeed 2 で内部的にキャッシュされる可能性があるので、既存のページに対する任意の編集が、Jetspeed 2 が行う変更を保証するために新しい id を必要とするかも知れません。
typeこの必須の属性はレイアウトフラグメント全てで 'layout' と指定しなければなりません。
name必須であるポートレット名は、フラグメントレイアウトを実装するのに使われます。ポートレット名は一般的に、portlet.xml ファイルで指定された 'portlet-app-id:portlet-id' の形を取ります。以下が Jetspeed 2 でサポートされるレイアウトポートレットの名前です。
  • jetspeed-layouts::FrameLayoutPortlet
  • jetspeed-layouts::VelocityOneColumn
  • jetspeed-layouts::VelocityOneColumnNoActions
  • jetspeed-layouts::VelocityThreeColumns
  • jetspeed-layouts::VelocityThreeColumnsNoActions
  • jetspeed-layouts::VelocityThreeColumnsTable
  • jetspeed-layouts::VelocityTwoColumns
  • jetspeed-layouts::VelocityTwoColumns2575
  • jetspeed-layouts::VelocityTwoColumns2575NoActions
  • jetspeed-layouts::VelocityTwoColumnsNoActions
  • jetspeed-layouts::VelocityTwoColumnsSmallLeft
  • jetspeed-layouts::VelocityTwoColumnsSmallLeftNoActions
  • jetspeed-layouts::VelocityTwoColumnsTable

The layout <fragment> element contains a number of other PSML elements:

レイアウト <fragment> 要素はたくさんの他の PSML 要素を含みます。

ElementDescription
fragment*Specified fragment elements can be either portlet fragments to be laid out by this layout fragment or nested layout fragments. All child fragments will have required property elements to specify their positions in this layout. Specifying no fragments within a layout fragment will result in no content being generated.
property*Layout fragments can have an optional 'sizes' property that can be used to specify multicolumn layout proportions. Nested layout fragments may also have 'row' and/or 'column' properties to identify its positional location in the parent layout.
security-constraints?Optionally defines inline security constraints for the fragment and its child fragments. Unlike, page, folder, and link constraints, only 'view' permissions can be constrained. If not specified, the fragment inherits the security constraints effective in the page.
要素説明
fragment*指定された fragment 要素は、レイアウトフラグメントによってレイアウトされるポートレットフラグメント、または階層化されたレイアウトフラグメントのどちらにも成り得ます。全ての子フラグメントにはこのレイアウトの位置を指定するための property 要素が必須です。レイアウトフラグメント内に指定されるフラグメントがない場合は結果としてコンテンツは生成されません。
property*レイアウトフラグメントは省略可能で 'sizes' プロパティを持つことが可能です。これは複数列の形状の明細を指定するのに使うことが可能です。階層化されたレイアウトフラグメントは、親レイアウト内の位置を特定するために 'row' または 'column' またはその両方のプロパティも持つかもしれません。
security-constraints?フラグメントとそのフラグメントの子フラグメントに対して、省略可能なインラインのセキュリティ制限を定義します。ページ、リンクの制約と違って、'view' パーミッションのみが制限されます。もし指定されなければ、フラグメントは ページ 内で有効なセキュリティ制限を継承します。

Example:

例:

<page>
  ...
  <fragment id="100393" type="layout" name="jetspeed-layouts::VelocityOneColumn">
    <fragment id="100939" type="portlet" name="j2-admin::LocaleSelector">
      <property layout="OneColumn" name="row" value="0"/>
    </fragment>                                
    <fragment id="100345" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
      <property layout="OneColumn" name="row" value="1"/>
      <property layout="TwoColumns" name="sizes" value="33%,66%"/>
      <fragment id="100121" type="portlet" name="j2-admin::LoginPortlet">
        <property layout="TwoColumns" name="row" value="0"/>
        <property layout="TwoColumns" name="column" value="0"/>
      </fragment>                                
      <fragment id="100171" type="portlet" name="demo::UserInfoTest">
        <property layout="TwoColumns" name="row" value="0"/>
        <property layout="TwoColumns" name="column" value="1"/>
      </fragment>    
    </fragment>
  </fragment>
  ...
</page>
... ...

[Portlet Fragments] ポートレットフラグメント

The portlet <fragment> element is used to identify portlets on the page. Portlet fragments are subject to layout of the parent layout fragment and thus support the 'row' and 'column' layout properties as required by the layout. There are many valid attributes for this element:

ポートレットの <fragment> 要素は、ページのポートレットを識別するために使われます。ポートレットフラグメントは、親レイアウトフラグメントのレイアウトの影響を受けます。なので、レイアウトで定められている 'row' と 'column' のレイアウトプロパティ をサポートします。この要素に対しては多数の有効な属性が存在します。

AttributeDescription
idThe required id is used to identify a fragment and must be unique across all fragments defined within the site. The value is opaque to Jetspeed2 and can follow any convention to guarantee uniqueness. Since fragments may be cached internally by Jetspeed2, any edits to exiting pages may require new ids to ensure the modifications are taken by Jetspeed2.
typeThis required attribute must be set to 'portlet' for all portlet fragments.
nameThe required name of the portlet used to populate the fragment content. The portlet name generally takes the form of 'portlet-app-id:portlet-id' as specified in the portlet.xml files.
skinA general purpose decorator attribute that can be referenced in the portlet decorators to control fragment presentation. Not currently used by Jetspeed2.
decoratorThe name of the default portlet decorator used to render the fragments. This attribute is optional, but if it is not specified, the defaults for the page must specify a default portlet decorator.
stateThe initial state of the fragment portlet; 'hidden' is currently the only valid value for this attribute.
属性説明
id必須である id は、フラグメントを特定するのに使います。そして、サイト内で定義される全てのフラグメントに渡って、ユニークでなければなりません。この値は Jetspeed2 に対して透過的でなく、一意性を保証するためのどのような仕様にも従うことが可能です。フラグメントは Jetspeed 2 で内部的にキャッシュされる可能性があるので、既存のページに対する任意の編集が、Jetspeed 2 が行う変更を保証するために新しい id を必要とするかも知れません。
typeこの必須の属性は全てのポートレットフラグメントで 'portlet' と指定しなければなりません。
name必須であるポートレット名は、フラグメントコンテンツを流し込むのに使われます。ポートレット名は一般的に portlet.xml ファイルで指定された 'portlet-app-id:portlet-id' の形を取ります。
skinフラグメントの表示のコントロールのための、ポートレットデコレータ内で参照する可能性のある一般的な目的のデコレータ属性。現時点では Jetspeed 2 では使っていません。
decoratorデフォルトのポートレットデコレータ名は、フラグメントのレンダリングに使われます。この属性は省略可能です。しかし、この属性が指定されない場合は、ページの defaults がデフォルトのポートレットデコレータを指定します。
stateフラグメントポートレットの初期状態; 現時点ではこの属性に対しては、唯一 'hidden' が有効な値です。

The portlet <fragment> element contains other PSML elements:

ポートレットの <fragment> 要素は他の PSML 要素を含みます。

ElementDescription
property*Parent fragments may have 'row' and/or 'column' properties to identify positional location in the parent layout.
title?Optional simple text element containing title for fragment portlet, overridding titles set in portlet.xml.
preference*Specifies initial user preference settings for fragment portlet, overridding any portlet preferences set in portlet.xml. User preferences, in turn, override these values.
security-constraints?Optionally defines inline security constraints for the fragment. Unlike, page, folder, and link constraints, only 'view' permissions can be constrained. If not specified, the fragment inherits the security constraints effective in the page.
要素説明
property*親フラグメントは、親レイアウト内の位置を特定するために、'row' または 'column' またはその両方のプロパティを持てます。
title?フラグメントポートレットのタイトルを含む、省略可能で単純なテキストの要素。portlet.xml でセットされたタイトルを上書きします。
preference*フラグメントポートレットにたいして、設定される初期のユーザプリファレンスを指定します。portlet.xml 内で指定された、どのようなポートレットプリファレンスも上書きされます。
security-constraints?フラグメントに対するインラインのセキュリティ制限を省略可能で定義します。ページ、フォルダの制約と違って、'view' パーミッションだけを制限できます。もし指定されない場合は、そのフラグメントは page 内で有効なセキュリティ制限を継承します。

Example:

例:

<fragment id="100393" type="layout" name="jetspeed-layouts::VelocityOneColumn">
  ...
  <fragment id="100939" type="portlet" name="j2-admin::LocaleSelector">
    <property layout="OneColumn" name="row" value="0"/>
  </fragment>                                
  ...
</fragment>
<fragment id="100393" type="layout" name="jetspeed-layouts::VelocityOneColumn">
  ...
  <fragment id="100939" type="portlet" name="j2-admin::LocaleSelector">
    <property layout="OneColumn" name="row" value="0"/>
  </fragment>                                
  ...
</fragment>

[Fragment Properties] フラグメントのプロパティ

The fragment <property> element is use to specify named properties for fragments. These properties are used commonly to specify layout portlet parameters and portlet positional location within the page. The property element has 3 supported attributes:

フラグメントの <property> 要素はフラグメントのプロパティの名前を指定するのに使われます。これらのプロパティは一般にレイアウトポートレットのパラメータとページ内のポートレットの位置を指定するために使われます。プロパティ要素は 3 つの属性をサポートします。

AttributeDescription
layout (deprecated) The symbolic name of the layout fragment portlet the property is associated with. This attribute is supported for compatibility reasons. The strictly hierarchical structure of layout and portlet fragments implies that any single fragment and its properties can be subject to one layout fragment portlet.
nameThe fragment property name. Jetspeed2 layout portlets support the 'row', 'column' and 'sizes' properties.
valueThe fragment property value. The 'row' and 'column' properties accept 0-based indicies values. The 'sizes' property accepts HTML frameset tag 'rows' and 'cols' attributes sytax, (i.e. '25%,75%').
属性説明
layout (廃止予定) プロパティが紐付いているフラグメントポートレットの識別名。この属性は互換性のために用意されています。レイアウトとポートレットフラグメントの厳密な階層構造は、どのような単一のフラグメントとそのプロパティも、 1 つのレイアウトポートレットの影響下にある可能性があることを意味します。
nameフラグメントプロパティの名前。Jetspeed 2 のレイアウトポートレットは 'row'、'column'、'sizes' プロパティをサポートします。
valueフラグメントプロパティの値。'row' と 'column' プロパティはゼロベースの指標値を受け取ります。'sizes' プロパティは HTML frameset タグの 'rows' と 'cols' 属性の書式 (例えば '25%,75%' 等) を受け取ります。

Example:

例:

<fragment id="100876" type="portlet" name="j2-admin::LoginPortlet">
  ...
  <property layout="TwoColumns" name="row" value="2"/>
  <property layout="TwoColumns" name="column" value="1"/>
  ...
</fragment>
<fragment id="100876" type="portlet" name="j2-admin::LoginPortlet">
  ...
  <property layout="TwoColumns" name="row" value="2"/>
  <property layout="TwoColumns" name="column" value="1"/>
  ...
</fragment>
<fragment id="103456" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
  ...
  <property layout="TwoColumns" name="sizes" value="33%,66%"/>
  ...
</fragment>
<fragment id="103456" type="layout" name="jetspeed-layouts::VelocityTwoColumns">
  ...
  <property layout="TwoColumns" name="sizes" value="33%,66%"/>
  ...
</fragment>

[Preferences] プリファレンス

The portlet fragment <preference> elements allows for the defining of portlet preferences. This provides an eaiser avenue for the setting of default portlet prefences for a portlet instance on a page without having to duplicate a portlet definition within the portlet application's portlet.xml.

ポートレットフラグメント の <preference> 要素は、ポートレットプリファレンスを定義します。これは、ポートレットアプリケーションの portlet.xml 内に、ポートレットの定義を何度も行う必要なく、ページ上のポートレットインスタンス用に、デフォルトのポートレットプリファレンスの設定を、簡単に行う手段を提供します。

Preference precedence: User Defined > Fragment Defined > portlet.xml Defined.

プリファレンスの優先度: ユーザ定義 > フラグメント定義 > portlet.xml での定義

The <preference> element attributes:

<preference> 要素の属性は以下のようなものです。

AttributeDescription
nameThe name of the preference.
readOnlyBoolean indicating whether or not the user can change the value of this preference.
属性説明
nameプリファレンスの名前。
readOnlyユーザがこのプリファレンス値を変えることができるかどうかを示す真偽値。

The <preference> element contains these elements:

<preference> 要素は以下の要素を含みます。

ElementDescription
value+Simple text element containing a value associated with the named preference.
要素説明
value+指定したプリファレンスと関係する値を含む単純なテキスト要素。

Example:

例:

<fragment id="uhtemp-1012" type="portlet" name="demo::BookmarkPortlet">
  ...
  <preference name="Google" readOnly="false">
    <value>http://www.google.com</value>
  </preference>
  ...
</fragment>
<fragment id="uhtemp-1012" type="portlet" name="demo::BookmarkPortlet">
  ...
  <preference name="Google" readOnly="false">
    <value>http://www.google.com</value>
  </preference>
  ...
</fragment>

[Folder] フォルダ

The <folder> element is a simple container to hold other PSML elements associated with a portal site folder. This element is persisted as a folder.metadata file in the associated file system directory. There are two valid attributes for the folder element:

<folder> 要素は、ポータルサイトのフォルダと関連する他の PSML 要素を保持する単純な入れ物です。この要素は、関連するファイルシステムディレクトリ内の folder.metadata ファイルとして存在します。フォルダの要素には 2 つの有効な属性が存在します。

AttributeDescription
hiddenA boolean attribute used to indicate that a folder should not appear in portal site menus or other navigational elements.
versionA general purpose version tracking attribute. Not currently used by Jetspeed2.
属性説明
hiddenフォルダが、ポータルサイトのメニューや他のナビゲーション用の要素に、表示されるかどうかを示す真偽値の属性。
version一般的な用途のバージョントラッキングの属性。現時点では Jetspeed 2 では使われていません。

The <folder> element contains a number of other PSML elements:

<folder> 要素は多くの他の PSML 要素を含みます。

ElementDescription
title?Simple element containing text for the default folder title. The title of the folder is considered its long description and is used as rollover text in some decorators if the short title is available for the menu text. If not specified, Jetspeed2 will attempt to define a title from the name of the file that contains the folder element.
short-title?Optional simple element containing text of the default short title for the folder. The short title, if available, is used as menu text in some decorators. If not specified, the title text is used.
default-page?Optional simple element containing text with the default page or subfolder name for the folder. The default page is used when the folder is directly referenced in the portal. The name of any page or folder in this folder, (including '..' for the parent folder), can be specified. If no default page is set, the page named 'default-page.psml' will be used; if 'default-page.psml' does not exist, the first page in the folder will become the default.
document-order*An optional collection of simple elements containing text names used to define a sort order for page, subfolder, and link members. Members with matching names will be arranged in the order these elements are defined. Other members will be sorted by their names and will appear in menus and other lists after the matching members. Regular expressions for name matching are not supported.
metadata*Optionally specifies locale specific titles and short titles for the folder.
menu*Optionally specifies additional or overrides inherited menu definitions for the folder.
security-constraints?Optionally defines inline security constraints for the folder. If not specified, the folder inherits the security constraints effective in the parent folder.
要素説明
title?デフォルトのフォルダのタイトルを含む単純な要素。フォルダのタイトルは、自身の長い説明とみなされます。もし短いタイトル名が利用可能であれば、一部のデコレータでロールオーバー用のテキストとして使われます。もし指定されていなければ、Jetspeed 2 はフォルダ要素を含むファイル名からタイトルを決めようと試みます。
short-title?フォルダのデフォルトの短いタイトルのテキストを含む省略可能な単純要素。もし短いタイトルが利用可能であれば、一部のデコレータでメニューテキストとして使われます。もし指定されない場合は、title のテキストが使われます。
default-page?フォルダのデフォルトページまたはサブフォルダのテキストを含む単純で省略可能な要素。デフォルトページは、フォルダが直接ポータルから参照されるときに使われます。このフォルダ内のどのような ページやフォルダを (親フォルダとして使われる「..」も含む) 指定することも可能です。もしデフォルトページが設定されない場合は、「default-page.psml」が使われます。もし 「default-page.psml」が存在しない場合は、フォルダ内の最初のページがデフォルトになります。
document-order*ページ、サブフォルダ、リンク といった構成要素のソートの順番を定義するのに使われる、構成要素のテキスト名を含む単純で省略可能な要素。名前にマッチする構成要素は、その要素が定義された順番に配置されます。他の構成要素は名前でソートされます。そして、メニューや他のリストでは、一致した構成要素の後に表示されます。正規表現による一致はサポートしません。
metadata*省略可能の指定である、ロケール固有のフォルダのタイトルや短いタイトル。
menu*省略可能の指定である、追加の、または継承したものを上書きするフォルダのメニュー定義。
security-constraints?省略可能の定義である、フォルダ用のインラインのセキュリティ制限の定義。もし指定されなければ、フォルダは親フォルダ内の有効なセキュリティ制限を継承します。

例: 序文の例を参照してください。

[Link] リンク

The <link> element is a simple container to hold other PSML elements associated with a portal link used to reference content external to the portal site. This element is persisted as a file with a '.link' extension in the appropriate file system directory associated with the parent folder. There are two valid attributes for the link element:

<link> 要素は、ポータルサイトの外部のコンテンツを参照するのに使われるポータルリンクに関連づけられている、他の PSML 要素を保持するシンプルな入れ物です。この要素は、親フォルダと関連づけられている、適切なファイルシステムのディレクトリ内に存在する「.link」という拡張子のファイルとして存在します。この要素には 2 つの有効な属性があります。

AttributeDescription
targetAn optional target frame name in which to open the external content. If not specified, the linked content will replace the portal in the browser.
versionA general purpose version tracking attribute. Not currently used by Jetspeed2.
属性説明
target省略可能の指定である、外部コンテンツを開くための対象となるフレームの名前。もし指定されなければ、リンクされたコンテンツはブラウザで開いているポータルと置き換わります。
version一般的な用途のバージョントラッキングの属性。現時点では Jetspeed 2 では使われていません。

The <link> element contains a number of other PSML elements:

<link> 要素は多数の他の PSML 要素を含みます。

ElementDescription
title?Simple element containing text for the default link title. The title of the link is considered its long description and is used as rollover text in some decorators if the short title is available for the menu text. If not specified, Jetspeed2 will attempt to define a title from the name of the file that contains the link element.
short-title?Optional simple element containing text of the default short title for the link. The short title, if available, is used as menu text in some decorators. If not specified, the title text is used.
urlThe required content url element. The text of this element will be used to navigate the specified target frame in the browser.
metadata*Optionally specifies locale specific titles and short titles for the link.
security-constraints?Optionally defines inline security constraints for the link. If not specified, the link inherits the security constraints effective in the parent folder.
要素説明
title?デフォルトのリンクタイトル用のテキストを含むシンプルな要素。リンクのタイトルは、その長い説明とみなされます。もしメニューテキスト用の短いタイトルが利用可能であれば、一部のデコレータでロールオーバー用のテキストとして使われます。もし指定されていなければ、Jetspeed 2 は link 要素を含むファイルのファイル名からタイトルを決めようと試みます。
short-title?リンクのデフォルトの短いタイトルのテキストを含む単純で省略可能な要素。もし短いタイトルが利用可能であれば、一部のデコレータでメニューテキストとして使われます。
urlコンテンツの URL のための必須の要素。この要素のテキストは、指定されたブラウザの対象フレームをナビゲートするのに使われます。
metadata*省略可能の指定である、ロケール固有のリンクのタイトルや短いタイトル。
security-constraints?省略可能の指定である、リンクのためのセキュリティ制限。もし指定されなければ、リンクは親フォルダ内の有効なセキュリティ制限を継承します。

例: 序文の例を参照してください。

[Global Page Security] グローバルなページのセキュリティ

The <page-security> element is a simple container to hold other PSML elements used to declare global security constraints and their definitions.. This element is persisted as the page.security file and is always located in the root directory of the PSML file system directories. There is only one valid attribute for the page security element:

<page-security> 要素はグローバルなセキュリティ制限と、その定義を宣言するために使われる、他の PSML 要素を保持するためのシンプルな入れ物です。この要素は page.security ファイルとして存在し、常に PSML ファイルのシステムディレクトリのルートディレクトリに存在します。page-security 要素の有効な属性は 1 つだけ存在します。

AttributeDescription
versionA general purpose version tracking attribute. Not currently used by Jetspeed2.
属性説明
version一般的な用途のバージョントラッキングの属性。現時点では Jetspeed 2 では使われていません。

The <page-security> element contains two security constraints related PSML elements:

<page-security> 要素は PSML 要素に関連する 2 つのセキュリティ制限を含みます。

ElementDescription
security-constraints-def*Optionally defines a collection of security constraints defined by name. These security constraints are referenced in pages, fragments, folders, and links and in this element to facilitate reuse and security maintenance.
global-security-constraints-ref*Optionally defines security constraints references to be applied to all security constraints in the site. The text of each simple element references a named security constraints definition specified here in this element.
要素説明
security-constraints-def*省略可能の定義である、セキュリティ制限のコレクションの名前。これらのセキュリティ制限はページフラグメントフォルダリンク内で、そして再利用とセキュリティのメンテナンスを容易にするために、この要素内で参照されます。
global-security-constraints-ref*サイト内の全てのセキュリティ制限を適用するための、省略可能の定義であるセキュリティ制限参照。それぞれのシンプルな要素のテキストは、このエレメント内のここで指定された名前のセキュリティ制限の定義を参照します。

例: 序文の例を参照してください。

[PSML Titles and Metadata] PSML タイトルとメタデータ

The page, folder, and link <metadata> element is used to define locale specific title and short title text. Any number of these elements may appear within a containing PSML element, but multiple named values should not be specified for a single locale. The PSML xml documents are normally declared with the UTF-8 encoding to support a wide variety of character sets.

ページ, フォルダ, リンク の <metadata> 要素はロケール特有のタイトルと短いタイトルのテキストを定義するのに使われます。これらの要素は何度でも、含まれる PSML 要素内で表れるかもしれません。しかし、複数の値が 1 つのロケールにたいして指定してはいけません。PSML XML 文書は、普通は広範囲のキャラクタセットをサポートするために、UTF-8 エンコーディングで宣言されます。

AttributeDescription
nameName of the metadata text. This name should be either 'title' or 'short-title' to specify locale specific title text.
xml:langThe locale language or language/country selector for the metadata text. The conventional Java Locale names are expected, (ISO-639 and ISO-3166). Valid values would include 'en' and 'en_US'.
属性説明
nameメタデータテキストの名前。この名前は、ロケール特有のタイトルテキストを指定するための、'title' と 'short-title' のどちらかを指定してください。
xml:langメタデータテキストのためのロケール言語または言語/国セレクタ。標準の Java ロケール名が期待されます (ISO-639 と ISO-3166)。有効な値として 'en' や 'en_US' を含みます。

Example:

例:

<page>
  ...
  <metadata name="title" xml:lang="fr">Ma Premiere Page de PSML</metadata>
  <metadata name="title" xml:lang="es">¡Bienvenido a Jetspeed 2!</metadata>
  <metadata name="title" xml:lang="hu">Köszönti a Jetspeed 2!</metadata>
  ...
</page>
<page>
  ...
  <metadata name="title" xml:lang="fr">Ma Premiere Page de PSML</metadata>
  <metadata name="title" xml:lang="es">¡Bienvenido a Jetspeed 2!</metadata>
  <metadata name="title" xml:lang="hu">Köszönti a Jetspeed 2!</metadata>
  ...
</page>

[PSML Security Constraints] PSML セキュリティ制限

The <security-constraints>, <security-constraints-def>, and <global-security-constraints-ref> elements that appear in pages, fragments, folders, links, and the page security elements above are documented separately in the the Declarative Security Constraints Guide.

pagesfragmentsfolderslinkspage security 要素内で現れる <security-constraints>、<security-constraints-def>、<global-security-constraints-ref> 要素については宣言型セキュリティ制限に関するドキュメントに別途記述されています。

宣言型セキュリティ制限のガイド

[PSML Menus] PSML メニュー

The <menu> element that appears in page and folder elements above are documented separately in the the Declarative Menus Guide.

ページフォルダ 要素内で現れる <menu> 要素は宣言型メニューのガイドに別途記述されています。

宣言型メニューのガイド