src/cm/media/js/lib/yui/yui_3.10.3/docs/dataschema/dataschema-xml.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.XML for XML Data</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.XML for XML Data</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.XML normalizes arbitrary XML data against a given schema into an object with known properties.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
    <p><strong>Note:</strong> XML parsing currently has known issues on the Android WebKit browser.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
<div class="example yui3-skin-sam">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
    <style scoped>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
/* custom styles for this example */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
#demo .output {margin-bottom:1em; padding:10px; border:1px solid #D9D9D9;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
</style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
<form id="demo">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
    <h4>Basic example</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
    <h6>Data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
&lt;root&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
    &lt;session&gt;34637542&lt;/session&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
    &lt;category name="music" id="5"&gt;&lt;results&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
        &lt;song id="59672468"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
            &lt;title&gt;I Kissed A Girl&lt;/title&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
            &lt;rank&gt;1&lt;/rank&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
            &lt;artist id="30326214"&gt;Katy Perry&lt;/artist&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
        &lt;/song&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
        &lt;song id="47973564"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
            &lt;title&gt;Shake It&lt;/title&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
            &lt;rank&gt;2&lt;/rank&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
            &lt;artist id="45575683"&gt;Metro Station&lt;/artist&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
        &lt;/song&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
        &lt;song id="52207363"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
            &lt;title&gt;Bleeding Love&lt;/title&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
            &lt;rank&gt;3&lt;/rank&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
            &lt;artist id="37956508"&gt;Leona Lewis&lt;/artist&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
        &lt;/song&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
    &lt;/results&gt;&lt;/category&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
&lt;/root&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
    <h6>Schema</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
    resultListLocator: "song",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
    resultFields: [{key:"title"}, {key:"artist"}, {key:"rank"}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
    <h6>Normalized data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
    <input type="button" id="demo_apply_basic" value="Apply schema =>">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
    <div id="demo_output_basic" class="output"></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
    <h4>Complex example</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
    <h6>Data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
&lt;Response&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
    &lt;Session&gt;542235629&lt;/Session&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
    &lt;Tracks  start="1" count="10" total="98" errorCount="0"
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
        defaultSort="popularity+" description="Top 100 Tracks"
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
        name="Top 100 Tracks"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
        &lt;Track id="59672468" rating="-1" title="I Kissed A Girl"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
            &lt;Artist id="30326214" rating="-1"&gt;Katy Perry&lt;/Artist&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
            &lt;ItemInfo&gt;&lt;ChartPosition last="26" this="1"/&gt;&lt;/ItemInfo&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
        &lt;/Track&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
        &lt;Track id="47973564" rating="-1" title="Shake It"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
            &lt;Artist id="45575683" rating="-1"&gt;Metro Station&lt;/Artist&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
            &lt;ItemInfo&gt;&lt;ChartPosition last="27" this="2"/&gt;&lt;/ItemInfo&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
        &lt;/Track&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
        &lt;Track id="52207363" rating="-1" title="Bleeding Love"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
            &lt;Artist id="37956508" rating="-1"&gt;Leona Lewis&lt;/Artist&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
            &lt;ItemInfo&gt;&lt;ChartPosition last="28" this="3"/&gt;&lt;/ItemInfo&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
        &lt;/Track&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
    &lt;/Tracks&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
&lt;/Response&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
        </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
    <h6>Schema</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
    metaFields: {session:"//Session", total:"//Tracks/@total"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
    resultListLocator: "//Track",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
    resultFields: [{key:"song", locator:"@title"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
        {key:"artist", locator:"Artist"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
        {key:"rank", locator:"ItemInfo/ChartPosition/@this"}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
    <h6>Normalized data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
    <input type="button" id="demo_apply_complex" value="Apply schema =>">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
    <div id="demo_output_complex" class="output"></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
    <h4>Nested example</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
    <h6>Data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
&lt;desserts&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
    &lt;dessert type="treat"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
        &lt;name&gt;cupcake&lt;/name&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
        &lt;flavors&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
            &lt;flavor name="chocolate"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
            &lt;flavor name="red velvet"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
        &lt;/flavors&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
    &lt;/dessert&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
    &lt;dessert type="treat"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
        &lt;name&gt;ice cream&lt;/name&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
        &lt;flavors&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
            &lt;flavor name="chocolate"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
            &lt;flavor name="strawberry"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
            &lt;flavor name="vanilla"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
        &lt;/flavors&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
    &lt;/dessert&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
    &lt;dessert type="treat"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
        &lt;name&gt;pie&lt;/name&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
        &lt;flavors&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
            &lt;flavor name="banana cream"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
            &lt;flavor name="blueberry"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
            &lt;flavor name="cherry"/&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
        &lt;/flavors&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
    &lt;/dessert&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
    &lt;dessert type="beverage"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
        &lt;name&gt;hot chocolate&lt;/name>&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
    &lt;/dessert&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
    &lt;dessert type="beverage"&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
        &lt;name&gt;port wine&lt;/name&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
    &lt;/dessert&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
&lt;/desserts&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
    <h6>Schema</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
    <pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
{
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
    resultListLocator: "dessert",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
    resultFields: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
        {key:"type", locator:"@type"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
        {key:"name", locator:"name"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
        {key:"flavors", schema: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
            resultListLocator: "flavor",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
            resultFields: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
                {key:"flavor", locator:"@name"}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
        }}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
    </pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
    <h6>Normalized data</h6>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
    <input type="button" id="demo_apply_nested" value="Apply schema =>">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
    <div id="demo_output_nested" class="output"></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
</form>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
YUI().use("dump", "node", "datatype-xml", "dataschema-xml", function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
    Y.on("click", function(e){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
        var data_in = Y.DataType.XML.parse('<root><session>34637542</session><category name="music" id="5"><results><song id="59672468"><title>I Kissed A Girl</title><rank>1</rank><artist id="30326214">Katy Perry</artist></song><song id="47973564"><title>Shake It</title><rank>2</rank><artist id="45575683">Metro Station</artist></song><song id="52207363"><title>Bleeding Love</title><rank>3</rank><artist id="37956508">Leona Lewis</artist></song></results></category></root>'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
            schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
                resultListLocator: "song",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
                resultFields: [{key:"title"}, {key:"artist"}, {key:"rank"}] // Or simply ["title", "artist", "rank"]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
            };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
        Y.one("#demo_output_basic").setHTML(Y.dump(Y.DataSchema.XML.apply(schema, data_in)));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
    }, "#demo_apply_basic");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
    Y.on("click", function(e){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
        var data_in = Y.DataType.XML.parse('<Response><Session>542235629</Session><Tracks  start="1" count="10" total="98" errorCount="0"  defaultSort="popularity+"  description="Top 100 Tracks"  name="Top 100 Tracks"  ><Track id="59672468" rating="-1" title="I Kissed A Girl"><Artist id="30326214" rating="-1">Katy Perry</Artist><ItemInfo><ChartPosition last="26" this="1"/></ItemInfo></Track><Track id="47973564" rating="-1" title="Shake It"><Artist id="45575683" rating="-1">Metro Station</Artist><ItemInfo><ChartPosition last="27" this="2"/></ItemInfo></Track><Track id="52207363" rating="-1" title="Bleeding Love"><Artist id="37956508" rating="-1">Leona Lewis</Artist><ItemInfo><ChartPosition last="28" this="3"/></ItemInfo></Track></Tracks></Response>'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
            schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
                metaFields: {session:"//Session", total:"//Tracks/@total"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
                resultListLocator: "//Track",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
                resultFields: [{key:"song", locator:"@title"}, {key:"artist", locator:"Artist"}, {key:"rank", locator:"ItemInfo/ChartPosition/@this"}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
            };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
        Y.one("#demo_output_complex").setHTML(Y.dump(Y.DataSchema.XML.apply(schema, data_in)));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
    }, "#demo_apply_complex");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
    Y.on("click", function(e){
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
        var data_in = Y.DataType.XML.parse('<desserts><dessert type="treat"><name>cupcake</name><flavors><flavor name="chocolate"/><flavor name="red velvet"/></flavors></dessert><dessert type="treat"><name>ice cream</name><flavors><flavor name="chocolate"/><flavor name="strawberry"/><flavor name="vanilla"/></flavors></dessert><dessert type="treat"><name>pie</name><flavors><flavor name="banana cream"/><flavor name="blueberry"/><flavor name="cherry"/></flavors></dessert><dessert type="beverage"><name>hot chocolate</name></dessert><dessert type="beverage"><name>port wine</name></dessert></desserts>'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
            schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
                resultListLocator: "dessert",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
                resultFields: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
                    {key:"type", locator:"@type"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
                    {key:"name", locator:"name"},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
                    {key:"flavors", schema: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
                        resultListLocator: "flavor",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
                        resultFields: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
                            {key:"flavor", locator:"@name"}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
                        ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
                    }}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
                ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
            };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
        Y.one("#demo_output_nested").setHTML(Y.dump(Y.DataSchema.XML.apply(schema, data_in)));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
    }, "#demo_apply_nested");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
<p>In order to use DataSchema.XML, input data must be an XML document.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
<pre class="code prettyprint">YUI().use(&quot;datatype-xml&quot;, &quot;dataschema-xml&quot;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
    var data_in = Y.DataType.XML.parse(&#x27;&lt;root&gt;&lt;session&gt;34637542&lt;&#x2F;session&gt;&lt;category name=&quot;music&quot; id=&quot;5&quot;&gt;&lt;results&gt;&lt;song id=&quot;59672468&quot;&gt;&lt;title&gt;I Kissed A Girl&lt;&#x2F;title&gt;&lt;rank&gt;1&lt;&#x2F;rank&gt;&lt;artist id=&quot;30326214&quot;&gt;Katy Perry&lt;&#x2F;artist&gt;&lt;&#x2F;song&gt;&lt;song id=&quot;47973564&quot;&gt;&lt;title&gt;Shake It&lt;&#x2F;title&gt;&lt;rank&gt;2&lt;&#x2F;rank&gt;&lt;artist id=&quot;45575683&quot;&gt;Metro Station&lt;&#x2F;artist&gt;&lt;&#x2F;song&gt;&lt;song id=&quot;52207363&quot;&gt;&lt;title&gt;Bleeding Love&lt;&#x2F;title&gt;&lt;rank&gt;3&lt;&#x2F;rank&gt;&lt;artist id=&quot;37956508&quot;&gt;Leona Lewis&lt;&#x2F;artist&gt;&lt;&#x2F;song&gt;&lt;&#x2F;results&gt;&lt;&#x2F;category&gt;&lt;&#x2F;root&gt;&#x27;),
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
            resultListLocator: &quot;song&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
            &#x2F;&#x2F; Or simply [&quot;title&quot;, &quot;artist&quot;, &quot;rank&quot;]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
            resultFields: [{key:&quot;title&quot;}, {key:&quot;artist&quot;}, {key:&quot;rank&quot;}]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
        data_out = Y.DataSchema.XML.apply(schema, data_in));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
    alert(data_out);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
<p>The data itself can get fairly complex, with deeply nested nodes and values held in attributes. In your schema, you can use XPath notation to define these locations.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
<pre class="code prettyprint">YUI().use(&quot;datatype-xml&quot;, &quot;dataschema-xml&quot;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
    var data_in = Y.DataType.XML.parse(&#x27;&lt;Response&gt;&lt;Session&gt;542235629&lt;&#x2F;Session&gt;&lt;Tracks  start=&quot;1&quot; count=&quot;10&quot; total=&quot;98&quot; errorCount=&quot;0&quot;  defaultSort=&quot;popularity+&quot;  description=&quot;Top 100 Tracks&quot;  name=&quot;Top 100 Tracks&quot;  &gt;&lt;Track id=&quot;59672468&quot; rating=&quot;-1&quot; title=&quot;I Kissed A Girl&quot;&gt;&lt;Artist id=&quot;30326214&quot; rating=&quot;-1&quot;&gt;Katy Perry&lt;&#x2F;Artist&gt;&lt;ItemInfo&gt;&lt;ChartPosition last=&quot;26&quot; this=&quot;1&quot;&#x2F;&gt;&lt;&#x2F;ItemInfo&gt;&lt;&#x2F;Track&gt;&lt;Track id=&quot;47973564&quot; rating=&quot;-1&quot; title=&quot;Shake It&quot;&gt;&lt;Artist id=&quot;45575683&quot; rating=&quot;-1&quot;&gt;Metro Station&lt;&#x2F;Artist&gt;&lt;ItemInfo&gt;&lt;ChartPosition last=&quot;27&quot; this=&quot;2&quot;&#x2F;&gt;&lt;&#x2F;ItemInfo&gt;&lt;&#x2F;Track&gt;&lt;Track id=&quot;52207363&quot; rating=&quot;-1&quot; title=&quot;Bleeding Love&quot;&gt;&lt;Artist id=&quot;37956508&quot; rating=&quot;-1&quot;&gt;Leona Lewis&lt;&#x2F;Artist&gt;&lt;ItemInfo&gt;&lt;ChartPosition last=&quot;28&quot; this=&quot;3&quot;&#x2F;&gt;&lt;&#x2F;ItemInfo&gt;&lt;&#x2F;Track&gt;&lt;&#x2F;Tracks&gt;&lt;&#x2F;Response&gt;&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
        schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
            metaFields: {session:&quot;&#x2F;&#x2F;Session&quot;, total:&quot;&#x2F;&#x2F;Tracks&#x2F;@total&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
            resultListLocator: &quot;&#x2F;&#x2F;Track&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
            resultFields: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
                {key:&quot;song&quot;, locator:&quot;@title&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
                {key:&quot;artist&quot;, locator:&quot;Artist&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
                {key:&quot;rank&quot;, locator:&quot;ItemInfo&#x2F;ChartPosition&#x2F;@this&quot;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
        data_out = Y.DataSchema.XML.apply(schema, data_in));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
    alert(data_out);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
});</pre>
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
<p>Nested schemas are supported as of version 3.1:</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
<pre class="code prettyprint">YUI().use(&quot;datatype-xml&quot;, &quot;dataschema-xml&quot;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
    var data_in = Y.DataType.XML.parse(&#x27;&lt;desserts&gt;&lt;dessert type=&quot;treat&quot;&gt;&lt;name&gt;cupcake&lt;&#x2F;name&gt;&lt;flavors&gt;&lt;flavor name=&quot;chocolate&quot;&#x2F;&gt;&lt;flavor name=&quot;red velvet&quot;&#x2F;&gt;&lt;&#x2F;flavors&gt;&lt;&#x2F;dessert&gt;&lt;dessert type=&quot;treat&quot;&gt;&lt;name&gt;ice cream&lt;&#x2F;name&gt;&lt;flavors&gt;&lt;flavor name=&quot;chocolate&quot;&#x2F;&gt;&lt;flavor name=&quot;strawberry&quot;&#x2F;&gt;&lt;flavor name=&quot;vanilla&quot;&#x2F;&gt;&lt;&#x2F;flavors&gt;&lt;&#x2F;dessert&gt;&lt;dessert type=&quot;treat&quot;&gt;&lt;name&gt;pie&lt;&#x2F;name&gt;&lt;flavors&gt;&lt;flavor name=&quot;banana cream&quot;&#x2F;&gt;&lt;flavor name=&quot;blueberry&quot;&#x2F;&gt;&lt;flavor name=&quot;cherry&quot;&#x2F;&gt;&lt;&#x2F;flavors&gt;&lt;&#x2F;dessert&gt;&lt;dessert type=&quot;beverage&quot;&gt;&lt;name&gt;hot chocolate&lt;&#x2F;name&gt;&lt;&#x2F;dessert&gt;&lt;dessert type=&quot;beverage&quot;&gt;&lt;name&gt;port wine&lt;&#x2F;name&gt;&lt;&#x2F;dessert&gt;&lt;&#x2F;desserts&gt;&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
        schema = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
            resultListLocator: &quot;dessert&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
            resultFields: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
                {key:&quot;type&quot;, locator:&quot;@type&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
                {key:&quot;name&quot;, locator:&quot;name&quot;},
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
                {key:&quot;flavors&quot;, schema: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
                    resultListLocator: &quot;flavor&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
                    resultFields: [
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
                        {key:&quot;flavor&quot;, locator:&quot;@name&quot;}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
                    ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
                }}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
            ]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
        data_out = Y.DataSchema.XML.apply(schema, data_in));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
    alert(data_out);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   275
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
                            <h2 class="no-toc">Examples</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
                                        <li data-description="Schema parsing a JavaScript array.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
                                            <a href="dataschema-array.html">DataSchema.Array</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
                                    
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
                                        <li data-description="Schema parsing JSON data.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
                                            <a href="dataschema-json.html">DataSchema.JSON</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
                                        <li data-description="Schema parsing XML data.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
                                            <a href="dataschema-xml.html">DataSchema.XML for XML Data</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
                                        <li data-description="Schema parsing data held in TABLE elements.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
                                            <a href="dataschema-table.html">DataSchema.XML for HTML Tables</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
                                        <li data-description="Schema parsing delimited plain-text data.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
                                            <a href="dataschema-text.html">DataSchema.Text</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
                                        <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
   325
                                            <a href="dataschema-parsing.html">Enforcing DataTypes</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
                                
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
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
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="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
                            <h2 class="no-toc">Examples That Use This Component</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
                            <ul class="examples">
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
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
                                    
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
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
                                    
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
                                        <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
   369
                                            <a href="../datasource/datasource-local.html">DataSource.Local</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
                                    
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
                                        <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
   375
                                            <a href="../datasource/datasource-get.html">DataSource.Get</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
                                    
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
                                        <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
   381
                                            <a href="../datasource/datasource-io.html">DataSource.IO</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
                                    
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
                                        <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
   387
                                            <a href="../datasource/datasource-function.html">DataSource.Function</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
                                        </li>
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
                                        <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
   393
                                            <a href="../datasource/datasource-caching.html">DataSource with Caching</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
                                        </li>
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
                                        <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
   399
                                            <a href="../datasource/datasource-offlinecache.html">DataSource with Offline Cache</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
                                        </li>
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
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
                
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
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   410
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   411
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   412
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   413
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   414
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   415
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   416
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   417
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   418
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   419
    assets: '../assets/dataschema',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   420
    name: 'dataschema-xml',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   421
    title: 'DataSchema.XML for XML Data',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   422
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   423
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   424
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   425
YUI.Env.Tests.examples.push('dataschema-array');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   426
YUI.Env.Tests.examples.push('dataschema-json');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   427
YUI.Env.Tests.examples.push('dataschema-xml');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   428
YUI.Env.Tests.examples.push('dataschema-table');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   429
YUI.Env.Tests.examples.push('dataschema-text');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   430
YUI.Env.Tests.examples.push('dataschema-parsing');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   431
YUI.Env.Tests.examples.push('datasource-local');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   432
YUI.Env.Tests.examples.push('datasource-get');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   433
YUI.Env.Tests.examples.push('datasource-io');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   434
YUI.Env.Tests.examples.push('datasource-function');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   435
YUI.Env.Tests.examples.push('datasource-caching');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   436
YUI.Env.Tests.examples.push('datasource-offlinecache');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   437
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   438
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   439
<script src="../assets/yui/test-runner.js"></script>
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
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   444
</html>