src/cm/media/js/lib/yui/yui_3.10.3/docs/dataschema/dataschema-json.html
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 525 89ef5ed3c48b
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
525
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     1
<!DOCTYPE html>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     2
<html lang="en">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     3
<head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     4
    <meta charset="utf-8">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     5
    <title>Example: DataSchema.JSON</title>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     6
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=PT+Sans:400,700,400italic,700italic">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     7
    <link rel="stylesheet" href="../../build/cssgrids/cssgrids-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     8
    <link rel="stylesheet" href="../assets/css/main.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     9
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    10
    <link rel="shortcut icon" type="image/png" href="../assets/favicon.png">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    11
    <script src="../../build/yui/yui-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    12
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    13
</head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    14
<body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    15
<!--
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    16
<a href="https://github.com/yui/yui3"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub"></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    17
-->
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    18
<div id="doc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    19
    <div id="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    20
        <h1><img src="http://yuilibrary.com/img/yui-logo.png"></h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    21
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    22
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    23
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    24
            <h1>Example: DataSchema.JSON</h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    25
    <div class="yui3-g">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    26
        <div class="yui3-u-3-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    27
            <div id="main">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    28
                <div class="content"><div class="intro">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
    <p>DataSchema.JSON normalizes arbitrary JSON data against a given schema into an object with known properties.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
<div class="example yui3-skin-sam">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
    <style scoped>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
/* custom styles for this example */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
#demo .output {margin-bottom:1em; padding:10px; border:1px solid #D9D9D9;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
</style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
<form id="demo">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
    <h4>Basic example</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
    <h6>Data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
    "total":10,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
    "results":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
        {"n":1, "fname":"George", "lname":"Washington"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
        {"n":2, "fname":"John", "lname":"Adams"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
        {"n":3, "fname":"Thomas", "lname":"Jefferson"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
        {"n":4, "fname":"James", "lname":"Madison"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
        {"n":5, "fname":"James", "lname":"Monroe"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
        {"n":6, "fname":"John", "mname":"Quincy", "lname":"Adams"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
        {"n":7, "fname":"Andrew", "lname":"Jackson"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
        {"n":8, "fname":"Martin", "lname":"Van Buren"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
        {"n":9, "fname":"William", "mname":"Henry", "lname":"Harrison"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
        {"n":10, "fname":"John", "lname":"Tyler"}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
    <h6>Schema</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
    metaFields: {total:"total"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
    resultListLocator: "results",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
    resultFields: [{key:"n"}, {key:"fname"}, {key:"lname"}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
    <h6>Normalized data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
    <input type="button" id="demo_apply_basic" value="Apply schema =>">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
    <div id="demo_output_basic" class="output"></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
    <h4>Complex example</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
    <h6>Data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
    "profile":{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
        "current":160,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
        "target":150
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
    "reference": [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
        {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
            "category":"exercise",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
            "type":"expenditure",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
            "activities":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
                {"name":"biking", "calories":550},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
                {"name":"golf", "calories":1000},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
                {"name":"running", "calories":650},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
                {"name":"swimming", "calories":650},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
                {"name":"walking", "calories":225}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
        {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
            "category":"nutrition",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
            "type":"intake",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
            "fruit":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
                {"name":"apple", "calories":70},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
                {"name":"banana", "calories":70},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
                {"name":"orange", "calories":90},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
            ],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
            "vegetables":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
                {"name":"baked potato", "calories":150},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
                {"name":"broccoli", "calories":50},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
                {"name":"green beans", "calories":30}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
    ],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
    "program": [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
        {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
            "category":"exercise",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
            "schedule":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
                {"day":"sunday", "activity":"swimming"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
                {"day":"monday", "activity":"running"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
                {"day":"tuesday", "activity":"biking"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
                {"day":"wednesday", "activity":"running"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
                {"day":"thursday", "activity":"swimming"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
                {"day":"friday", "activity":"running"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
                {"day":"saturday", "activity":"golf"}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
        {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
            "category":"diet",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
            "schedule":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
    <h6>Schema</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
    metaFields: {current:"profile.current", target:"profile.target",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
        reference:"reference[0].activities"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
    resultListLocator: "program[0].schedule",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
    resultFields: [{key:"day"}, {key:"activity"}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
    <h6>Normalized data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
    <input type="button" id="demo_apply_complex" value="Apply schema =>">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
    <div id="demo_output_complex" class="output"></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
</form>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
YUI().use("dump", "node", "dataschema-json", function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
    Y.on("click", function(e){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
        var data_in = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
                "total":10,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
                "results":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
                    {"n":1, "fname":"George", "lname":"Washington"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
                    {"n":2, "fname":"John", "lname":"Adams"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
                    {"n":3, "fname":"Thomas", "lname":"Jefferson"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
                    {"n":4, "fname":"James", "lname":"Madison"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
                    {"n":5, "fname":"James", "lname":"Monroe"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
                    {"n":6, "fname":"John", "mname":"Quincy", "lname":"Adams"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
                    {"n":7, "fname":"Andrew", "lname":"Jackson"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
                    {"n":8, "fname":"Martin", "lname":"Van Buren"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
                    {"n":9, "fname":"William", "mname":"Henry", "lname":"Harrison"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
                    {"n":10, "fname":"John", "lname":"Tyler"}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
                ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
            },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
            schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
                metaFields: {total:"total"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
                resultListLocator: "results",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
                resultFields: [{key:"n"}, {key:"fname"}, {key:"lname"}] // Or simply: ["n", "fname", "lname"]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
            };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
        Y.one("#demo_output_basic").setHTML(Y.dump(Y.DataSchema.JSON.apply(schema, data_in)));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
    }, "#demo_apply_basic");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
    Y.on("click", function(e){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
        var data_in = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
                "profile":{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
                    "current":160,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
                    "target":150
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
                },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
                "reference": [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
                    {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
                        "category":"exercise",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
                        "type":"expenditure",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
                        "activities":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
                            {"name":"biking", "calories":550},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
                            {"name":"golf", "calories":1000},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
                            {"name":"running", "calories":650},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
                            {"name":"swimming", "calories":650},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
                            {"name":"walking", "calories":225}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
                        ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
                    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
                    {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
                        "category":"nutrition",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
                        "type":"intake",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
                        "fruit":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
                            {"name":"apple", "calories":70},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
                            {"name":"banana", "calories":70},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
                            {"name":"orange", "calories":90},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
                        ],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
                        "vegetables":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
                            {"name":"baked potato", "calories":150},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
                            {"name":"broccoli", "calories":50},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
                            {"name":"green beans", "calories":30}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
                        ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
                    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
                ],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
                "program": [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
                    {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
                        "category":"exercise",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
                        "weekly schedule":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
                            {"day":"sunday", "activity":"swimming"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
                            {"day":"monday", "activity":"running"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
                            {"day":"tuesday", "activity":"biking"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
                            {"day":"wednesday", "activity":"running"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
                            {"day":"thursday", "activity":"swimming"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
                            {"day":"friday", "activity":"running"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
                            {"day":"saturday", "activity":"golf"}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
                        ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
                    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
                    {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
                        "category":"diet",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
                        "schedule":[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
                        ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
                    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
                ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
            },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
            schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
                metaFields: {current:"profile.current", target:"profile.target", reference:"reference[0].activities"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
                resultListLocator: "program[0]['weekly schedule']",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
                resultFields: [{key:"day"}, {key:"activity"}] // Or simply: ["day", "activity"]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
            };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
        Y.one("#demo_output_complex").setHTML(Y.dump(Y.DataSchema.JSON.apply(schema, data_in)));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
    }, "#demo_apply_complex");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
<p>In order to use DataSchema.JSON, input data must be a JavaScript object.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
<pre class="code prettyprint">YUI().use(&quot;dataschema-json&quot;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
    var data_in = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
            total:10,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
            results:[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
                {n:1, fname:&quot;George&quot;, lname:&quot;Washington&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
                {n:2, fname:&quot;John&quot;, lname:&quot;Adams&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
                {n:3, fname:&quot;Thomas&quot;, lname:&quot;Jefferson&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
                {n:4, fname:&quot;James&quot;, lname:&quot;Madison&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
                {n:5, fname:&quot;James&quot;, lname:&quot;Monroe&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
                {n:6, fname:&quot;John&quot;, mname:&quot;Quincy&quot;, lname:&quot;Adams&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
                {n:7, fname:&quot;Andrew&quot;, lname:&quot;Jackson&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
                {n:8, fname:&quot;Martin&quot;, lname:&quot;Van Buren&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
                {n:9, fname:&quot;William&quot;, mName:&quot;Henry&quot;, lname:&quot;Harrison&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
                {n:10, fname:&quot;John&quot;, lname:&quot;Tyler&quot;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   252
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   253
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   254
        schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
            metaFields: {total:&quot;total&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
            resultListLocator: &quot;results&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
            &#x2F;&#x2F; Or simply: [&quot;n&quot;, &quot;fname&quot;, &quot;lname&quot;]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
            resultFields: [{key:&quot;n&quot;}, {key:&quot;fname&quot;}, {key:&quot;lname&quot;}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
        data_out = Y.DataSchema.JSON.apply(schema, data_in));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
    alert(data_out);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
<p>The data itself can get fairly complex, with deeply nested arrays and objects. In your schema, you can use dot notation and the array-index syntax to define these locations. When necessary, you can also use object-bracket notation to define locations that might otherwise be invalid with dot notation.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
<pre class="code prettyprint">YUI().use(&quot;dataschema-json&quot;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
        var data_in = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
            &quot;profile&quot;:{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
                &quot;current&quot;:160,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
                &quot;target&quot;:150
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
            },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
            &quot;reference&quot;: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   275
                {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
                    &quot;category&quot;:&quot;exercise&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
                    &quot;type&quot;:&quot;expenditure&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
                    &quot;activities&quot;:[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
                        {&quot;name&quot;:&quot;biking&quot;, &quot;calories&quot;:550},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
                        {&quot;name&quot;:&quot;golf&quot;, &quot;calories&quot;:1000},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
                        {&quot;name&quot;:&quot;running&quot;, &quot;calories&quot;:650},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
                        {&quot;name&quot;:&quot;swimming&quot;, &quot;calories&quot;:650},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
                        {&quot;name&quot;:&quot;walking&quot;, &quot;calories&quot;:225}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
                    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
                },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
                {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
                    &quot;category&quot;:&quot;nutrition&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
                    &quot;type&quot;:&quot;intake&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
                    &quot;fruit&quot;:[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
                        {&quot;name&quot;:&quot;apple&quot;, &quot;calories&quot;:70},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
                        {&quot;name&quot;:&quot;banana&quot;, &quot;calories&quot;:70},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
                        {&quot;name&quot;:&quot;orange&quot;, &quot;calories&quot;:90},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
                    ],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
                    &quot;vegetables&quot;:[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
                        {&quot;name&quot;:&quot;baked potato&quot;, &quot;calories&quot;:150},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
                        {&quot;name&quot;:&quot;broccoli&quot;, &quot;calories&quot;:50},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
                        {&quot;name&quot;:&quot;green beans&quot;, &quot;calories&quot;:30}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
                    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   299
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
            ],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
            &quot;program&quot;: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
                {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
                    &quot;category&quot;:&quot;exercise&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
                    &quot;weekly schedule&quot;:[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
                        {&quot;day&quot;:&quot;sunday&quot;, &quot;activity&quot;:&quot;swimming&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
                        {&quot;day&quot;:&quot;monday&quot;, &quot;activity&quot;:&quot;running&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
                        {&quot;day&quot;:&quot;tuesday&quot;, &quot;activity&quot;:&quot;biking&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
                        {&quot;day&quot;:&quot;wednesday&quot;, &quot;activity&quot;:&quot;running&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
                        {&quot;day&quot;:&quot;thursday&quot;, &quot;activity&quot;:&quot;swimming&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
                        {&quot;day&quot;:&quot;friday&quot;, &quot;activity&quot;:&quot;running&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
                        {&quot;day&quot;:&quot;saturday&quot;, &quot;activity&quot;:&quot;golf&quot;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
                    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
                },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
                {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
                    &quot;category&quot;:&quot;diet&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
                    &quot;schedule&quot;:[
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
                    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
        schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
            metaFields: {current:&quot;profile.current&quot;, target:&quot;profile.target&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
                reference:&quot;reference[0].activities&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
            resultListLocator: &quot;program[0][&#x27;weekly schedule&#x27;]&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
            &#x2F;&#x2F; Or simply: [&quot;day&quot;, &quot;activity&quot;]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
            resultFields: [{key:&quot;day&quot;}, {key:&quot;activity&quot;}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
        data_out = Y.DataSchema.Array.apply(schema, data_in));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
    alert(data_out);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
                            <h2 class="no-toc">Examples</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   347
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
                                        <li data-description="Schema parsing a JavaScript array.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
                                            <a href="dataschema-array.html">DataSchema.Array</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   354
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   355
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   356
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   357
                                        <li data-description="Schema parsing JSON data.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
                                            <a href="dataschema-json.html">DataSchema.JSON</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   360
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   361
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   362
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   363
                                        <li data-description="Schema parsing XML data.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
                                            <a href="dataschema-xml.html">DataSchema.XML for XML Data</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   366
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   367
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   368
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   369
                                        <li data-description="Schema parsing data held in TABLE elements.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
                                            <a href="dataschema-table.html">DataSchema.XML for HTML Tables</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   372
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   373
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   374
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   375
                                        <li data-description="Schema parsing delimited plain-text data.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
                                            <a href="dataschema-text.html">DataSchema.Text</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   378
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   379
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   380
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   381
                                        <li data-description="Parsing data into specified types as the schema is being applied.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
                                            <a href="dataschema-parsing.html">Enforcing DataTypes</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   384
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   385
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   386
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   387
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   389
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   390
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   391
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   392
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   393
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   395
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   396
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   397
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   398
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   399
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   401
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   402
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   403
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
                            <h2 class="no-toc">Examples That Use This Component</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   407
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   408
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   410
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   411
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   412
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   413
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   414
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   415
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   416
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   417
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   418
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   419
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   420
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   421
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   422
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   423
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   424
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   425
                                        <li data-description="The Local DataSource manages retrieval of in-page data, from JavaScript arrays and objects to DOM elements.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   426
                                            <a href="../datasource/datasource-local.html">DataSource.Local</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   427
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   428
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   429
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   430
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   431
                                        <li data-description="The Get DataSource, which manages retrieval of data from remote sources via the Get Utility, can be useful for accessing data from cross-domain servers without the need for a proxy.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   432
                                            <a href="../datasource/datasource-get.html">DataSource.Get</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   433
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   434
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   435
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   436
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   437
                                        <li data-description="The IO DataSource manages retrieval of data from remote sources, via the IO Utility.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   438
                                            <a href="../datasource/datasource-io.html">DataSource.IO</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   439
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   440
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   441
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   442
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   443
                                        <li data-description="The Function DataSource, which manages retrieval of data from a JavaScript function, provides a highly customizeable mechanism for implementer-defined data retrieval algorithms">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   444
                                            <a href="../datasource/datasource-function.html">DataSource.Function</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   445
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   446
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   447
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   448
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   449
                                        <li data-description="Use the DataSourceCache plugin to enable caching and reduce server calls to remote sources.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   450
                                            <a href="../datasource/datasource-caching.html">DataSource with Caching</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   451
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   452
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   453
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   454
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   455
                                        <li data-description="The DataSourceCache plugin supports offline caching so that cached data persists across browser sessions.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   456
                                            <a href="../datasource/datasource-offlinecache.html">DataSource with Offline Cache</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   457
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   458
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   459
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   460
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   461
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   462
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   463
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   464
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   465
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   466
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   467
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   468
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   469
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   470
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   471
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   472
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   473
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   474
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   475
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   476
    assets: '../assets/dataschema',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   477
    name: 'dataschema-json',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   478
    title: 'DataSchema.JSON',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   479
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   480
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   481
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   482
YUI.Env.Tests.examples.push('dataschema-array');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   483
YUI.Env.Tests.examples.push('dataschema-json');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   484
YUI.Env.Tests.examples.push('dataschema-xml');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   485
YUI.Env.Tests.examples.push('dataschema-table');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   486
YUI.Env.Tests.examples.push('dataschema-text');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   487
YUI.Env.Tests.examples.push('dataschema-parsing');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   488
YUI.Env.Tests.examples.push('datasource-local');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   489
YUI.Env.Tests.examples.push('datasource-get');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   490
YUI.Env.Tests.examples.push('datasource-io');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   491
YUI.Env.Tests.examples.push('datasource-function');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   492
YUI.Env.Tests.examples.push('datasource-caching');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   493
YUI.Env.Tests.examples.push('datasource-offlinecache');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   494
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   495
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   496
<script src="../assets/yui/test-runner.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   497
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   498
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   499
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   500
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   501
</html>