バージョン

DataSchema を使用したデータ変換の実行 (igDataSource)

データ スキーマは、igDataSource コンポーネントのデータ変換を処理します。スキーマ定義は次の部分で構成されます。

  • フィールド名定義のリスト
  • スキーマ タイプ

フィールド定義は次の項目で構成されます。

  • フィールド名
  • searchField 値 (入力データ内のフィールド値の場所を正確に指定します。)
  • formatter 関数

配列スキーマ

JavaScript 配列を使用する場合、配列スキーマを使うのが最良のオプションです。このようにこれらの配列を使用すると、JavaScript オブジェクトやその他の配列を含むことができます。

JavaScript の場合:


    var arrayOfObjects =  [
        {song:"Light My Fire",artist:"The Doors",year:1967},
        {song:"Another Brick in the Wall",artist:"Pink Floyd",year:1979},
        {song:"The Show Must Go On",artist:"Queen",year:1991}
    ];
    var arrayOfArrays = [
        ["Light My Fire", "The Doors", 1967],
        ["Another Brick in the Wall", "Pink Floyd", 1979],
        ["The Show Must Go On", "Queen", 1991]
    ];
    var mySchema = new $.ig.DataSchema("array", {
        fields: [{
            name: "song"
        }, {
            name: "artist"
        }, {
            name: "year"
        }]
    });
    var ds = new $.ig.DataSource({
        dataSource: arrayOfObjects,
        schema: mySchema
    }).dataBind();

JSON スキーマ

JSON スキーマ JSON データを使用する場合、JSON スキーマを使うのが最良のオプションです。

JavaScript の場合:


var json = {
    "profile":{
        "current":160,
        "target":150
    },
    "program": [
        {
            "category":"exercise",
            "weekly schedule":[
                {"day":"sunday", "activity":"swimming"},
                {"day":"monday", "activity":"running"},
                {"day":"tuesday", "activity":"biking"},
                {"day":"wednesday", "activity":"running"},
                {"day":"thursday", "activity":"swimming"},
                {"day":"friday", "activity":"running"},
                {"day":"saturday", "activity":"golf"}
            ]
        }
    ]
    };
    var jsonSchema = new $.ig.DataSchema("json", {
        fields: [{
            name: "day"
        }, {
            name: "activity"
        }],
        searchField: "program[0]['weekly schedule']"
    });
    var ds = new $.ig.DataSource({
        dataSource: json,
        schema: jsonSchema
    }).dataBind();

XML スキーマ

XML データを使用する場合、XML スキーマを使うのが最良のオプションです。

XML の場合:


gustavo0@adventure-works.com

May 16 2005 4:33

catherine0@adventure-works.com

May 16 2005 4:33

kim2@adventure-works.com

May 16 2005 4:33

XML スキーマの場合、XPath を使用して、バインドしたいデータのあるノードを選択します。

JavaScript の場合:


 var xmlSchema = new $.ig.DataSchema("xml", { fields:[ 
    {name : "FirstName", xpath: "generalInfo/@firstName"},
    {name : "LastName", xpath : "generalInfo/@lastName"}, 
    {name : "Email",  xpath : "generalInfo"} ], 
    searchField:"//person"});

注: データ スキーマを定義した後、それをデータ ソースのスキーマ オプションに適用できます。

JavaScript の場合:


    var mySchema = new $.ig.DataSchema("array", {
        fields: [{
            name: "song"
        }, {
            name: "artist"
        }, {
            name: "year"
        }]
    });
    var ds = new $.ig.DataSource({
        dataSource: arrayOfObjects,
        schema: mySchema
    }).dataBind();

関連トピック

オンラインで表示: GitHub