Spaces:
Sleeping
Sleeping
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> | |
| <head> | |
| <meta http-equiv="content-type" content="text/html; charset=utf-8" /> | |
| <meta name="generator" content="JsDoc Toolkit" /> | |
| <title>JsDoc Reference - JSONSchema</title> | |
| <style type="text/css"> | |
| /* default.css */ | |
| body | |
| { | |
| font: 12px "Lucida Grande", Tahoma, Arial, Helvetica, sans-serif; | |
| width: 800px; | |
| } | |
| .header | |
| { | |
| clear: both; | |
| background-color: #ccc; | |
| padding: 8px; | |
| } | |
| h1 | |
| { | |
| font-size: 150%; | |
| font-weight: bold; | |
| padding: 0; | |
| margin: 1em 0 0 .3em; | |
| } | |
| hr | |
| { | |
| border: none 0; | |
| border-top: 1px solid #7F8FB1; | |
| height: 1px; | |
| } | |
| pre.code | |
| { | |
| display: block; | |
| padding: 8px; | |
| border: 1px dashed #ccc; | |
| } | |
| #index | |
| { | |
| margin-top: 24px; | |
| float: left; | |
| width: 160px; | |
| position: absolute; | |
| left: 8px; | |
| background-color: #F3F3F3; | |
| padding: 8px; | |
| } | |
| #content | |
| { | |
| margin-left: 190px; | |
| width: 600px; | |
| } | |
| .classList | |
| { | |
| list-style-type: none; | |
| padding: 0; | |
| margin: 0 0 0 8px; | |
| font-family: arial, sans-serif; | |
| font-size: 1em; | |
| overflow: auto; | |
| } | |
| .classList li | |
| { | |
| padding: 0; | |
| margin: 0 0 8px 0; | |
| } | |
| .summaryTable { width: 100%; } | |
| h1.classTitle | |
| { | |
| font-size:170%; | |
| line-height:130%; | |
| } | |
| h2 { font-size: 110%; } | |
| caption, div.sectionTitle | |
| { | |
| background-color: #7F8FB1; | |
| color: #fff; | |
| font-size:130%; | |
| text-align: left; | |
| padding: 2px 6px 2px 6px; | |
| border: 1px #7F8FB1 solid; | |
| } | |
| div.sectionTitle { margin-bottom: 8px; } | |
| .summaryTable thead { display: none; } | |
| .summaryTable td | |
| { | |
| vertical-align: top; | |
| padding: 4px; | |
| border-bottom: 1px #7F8FB1 solid; | |
| border-right: 1px #7F8FB1 solid; | |
| } | |
| /*col#summaryAttributes {}*/ | |
| .summaryTable td.attributes | |
| { | |
| border-left: 1px #7F8FB1 solid; | |
| width: 140px; | |
| text-align: right; | |
| } | |
| td.attributes, .fixedFont | |
| { | |
| line-height: 15px; | |
| color: #002EBE; | |
| font-family: "Courier New",Courier,monospace; | |
| font-size: 13px; | |
| } | |
| .summaryTable td.nameDescription | |
| { | |
| text-align: left; | |
| font-size: 13px; | |
| line-height: 15px; | |
| } | |
| .summaryTable td.nameDescription, .description | |
| { | |
| line-height: 15px; | |
| padding: 4px; | |
| padding-left: 4px; | |
| } | |
| .summaryTable { margin-bottom: 8px; } | |
| ul.inheritsList | |
| { | |
| list-style: square; | |
| margin-left: 20px; | |
| padding-left: 0; | |
| } | |
| .detailList { | |
| margin-left: 20px; | |
| line-height: 15px; | |
| } | |
| .detailList dt { margin-left: 20px; } | |
| .detailList .heading | |
| { | |
| font-weight: bold; | |
| padding-bottom: 6px; | |
| margin-left: 0; | |
| } | |
| .light, td.attributes, .light a:link, .light a:visited | |
| { | |
| color: #777; | |
| font-style: italic; | |
| } | |
| .fineprint | |
| { | |
| text-align: right; | |
| font-size: 10px; | |
| } | |
| </style> | |
| </head> | |
| <body> | |
| <!-- ============================== header ================================= --> | |
| <!-- begin static/header.html --> | |
| <div id="header"> | |
| </div> | |
| <!-- end static/header.html --> | |
| <!-- ============================== classes index ============================ --> | |
| <div id="index"> | |
| <!-- begin publish.classesIndex --> | |
| <div align="center"><a href="../index.html">Class Index</a> | |
| | <a href="../files.html">File Index</a></div> | |
| <hr /> | |
| <h2>Classes</h2> | |
| <ul class="classList"> | |
| <li><a href="../symbols/Environment.html">Environment</a></li> | |
| <li><a href="../symbols/InitializationError.html">InitializationError</a></li> | |
| <li><a href="../symbols/JSONInstance.html">JSONInstance</a></li> | |
| <li><a href="../symbols/JSONSchema.html">JSONSchema</a></li> | |
| <li><a href="../symbols/JSV.html">JSV</a></li> | |
| <li><a href="../symbols/Report.html">Report</a></li> | |
| <li><a href="../symbols/ValidationError.html">ValidationError</a></li> | |
| </ul> | |
| <hr /> | |
| <!-- end publish.classesIndex --> | |
| </div> | |
| <div id="content"> | |
| <!-- ============================== class title ============================ --> | |
| <h1 class="classTitle"> | |
| Class JSONSchema | |
| </h1> | |
| <!-- ============================== class summary ========================== --> | |
| <p class="description"> | |
| <br />Extends | |
| <a href="../symbols/JSONInstance.html">JSONInstance</a>.<br /> | |
| <br /><i>Defined in: </i> <a href="../symbols/src/jsv.js.html">jsv.js</a>. | |
| </p> | |
| <!-- ============================== constructor summary ==================== --> | |
| <table class="summaryTable" cellspacing="0" summary="A summary of the constructor documented in the class JSONSchema."> | |
| <caption>Class Summary</caption> | |
| <thead> | |
| <tr> | |
| <th scope="col">Constructor Attributes</th> | |
| <th scope="col">Constructor Name and Description</th> | |
| </tr> | |
| </thead> | |
| <tbody> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription" > | |
| <div class="fixedFont"> | |
| <b><a href="../symbols/JSONSchema.html#constructor">JSONSchema</a></b>(env, json, uri, schema) | |
| </div> | |
| <div class="description">This class binds a <a href="../symbols/JSONInstance.html">JSONInstance</a> with a <a href="../symbols/JSONSchema.html">JSONSchema</a> to provided context aware methods.</div> | |
| </td> | |
| </tr> | |
| </tbody> | |
| </table> | |
| <!-- ============================== properties summary ===================== --> | |
| <!-- ============================== methods summary ======================== --> | |
| <table class="summaryTable" cellspacing="0" summary="A summary of the methods documented in the class JSONSchema."> | |
| <caption>Method Summary</caption> | |
| <thead> | |
| <tr> | |
| <th scope="col">Method Attributes</th> | |
| <th scope="col">Method Name and Description</th> | |
| </tr> | |
| </thead> | |
| <tbody> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription"> | |
| <div class="fixedFont"><b><a href="../symbols/JSONSchema.html#getAttribute">getAttribute</a></b>(key, arg) | |
| </div> | |
| <div class="description">Returns the value of the provided attribute name.</div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription"> | |
| <div class="fixedFont"><b><a href="../symbols/JSONSchema.html#getAttributes">getAttributes</a></b>() | |
| </div> | |
| <div class="description">Returns all the attributes of the schema.</div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription"> | |
| <div class="fixedFont"><b><a href="../symbols/JSONSchema.html#getLink">getLink</a></b>(rel, instance) | |
| </div> | |
| <div class="description">Convenience method for retrieving a link or link object from a schema.</div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription"> | |
| <div class="fixedFont"><b><a href="../symbols/JSONSchema.html#getReference">getReference</a></b>(name) | |
| </div> | |
| <div class="description">Returns the value of the provided reference name.</div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription"> | |
| <div class="fixedFont"><b><a href="../symbols/JSONSchema.html#getSchema">getSchema</a></b>() | |
| </div> | |
| <div class="description">Returns the schema of the schema.</div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription"> | |
| <div class="fixedFont"><b><a href="../symbols/JSONSchema.html#setReference">setReference</a></b>(name, uri) | |
| </div> | |
| <div class="description">Set the provided reference to the given value.</div> | |
| </td> | |
| </tr> | |
| <tr> | |
| <td class="attributes"> </td> | |
| <td class="nameDescription"> | |
| <div class="fixedFont"><b><a href="../symbols/JSONSchema.html#validate">validate</a></b>(instance, report, parent, parentSchema, name) | |
| </div> | |
| <div class="description">Validates the provided instance against the target schema and returns a <a href="../symbols/Report.html">Report</a>.</div> | |
| </td> | |
| </tr> | |
| </tbody> | |
| </table> | |
| <dl class="inheritsList"> | |
| <dt>Methods borrowed from class <a href="../symbols/JSONInstance.html">JSONInstance</a>: </dt><dd><a href="../symbols/JSONInstance.html#equals">equals</a>, <a href="../symbols/JSONInstance.html#getEnvironment">getEnvironment</a>, <a href="../symbols/JSONInstance.html#getProperties">getProperties</a>, <a href="../symbols/JSONInstance.html#getProperty">getProperty</a>, <a href="../symbols/JSONInstance.html#getPropertyNames">getPropertyNames</a>, <a href="../symbols/JSONInstance.html#getType">getType</a>, <a href="../symbols/JSONInstance.html#getURI">getURI</a>, <a href="../symbols/JSONInstance.html#getValue">getValue</a>, <a href="../symbols/JSONInstance.html#getValueOfProperty">getValueOfProperty</a>, <a href="../symbols/JSONInstance.html#resolveURI">resolveURI</a></dd> | |
| </dl> | |
| <!-- ============================== events summary ======================== --> | |
| <!-- ============================== constructor details ==================== --> | |
| <div class="details"><a name="constructor"> </a> | |
| <div class="sectionTitle"> | |
| Class Detail | |
| </div> | |
| <div class="fixedFont"> | |
| <b>JSONSchema</b>(env, json, uri, schema) | |
| </div> | |
| <div class="description"> | |
| This class binds a <a href="../symbols/JSONInstance.html">JSONInstance</a> with a <a href="../symbols/JSONSchema.html">JSONSchema</a> to provided context aware methods. | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Parameters:</dt> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/Environment.html">Environment</a>}</span> <b>env</b> | |
| </dt> | |
| <dd>The environment this schema belongs to</dd> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/JSONInstance.html">JSONInstance</a>|Any}</span> <b>json</b> | |
| </dt> | |
| <dd>The value of the schema</dd> | |
| <dt> | |
| <span class="light fixedFont">{String}</span> <b>uri</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>The URI of the schema. If undefined, the URI will be a randomly generated UUID.</dd> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/JSONSchema.html">JSONSchema</a>|Boolean}</span> <b>schema</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>The schema to bind to the instance. If <code>undefined</code>, the environment's default schema will be used. If <code>true</code>, the instance's schema will be itself.</dd> | |
| </dl> | |
| </div> | |
| <!-- ============================== field details ========================== --> | |
| <!-- ============================== method details ========================= --> | |
| <div class="sectionTitle"> | |
| Method Detail | |
| </div> | |
| <a name="getAttribute"> </a> | |
| <div class="fixedFont"> | |
| <span class="light">{<a href="../symbols/JSONSchema.html">JSONSchema</a>|Any}</span> | |
| <b>getAttribute</b>(key, arg) | |
| </div> | |
| <div class="description"> | |
| Returns the value of the provided attribute name. <p> This method is different from <a href="../symbols/JSONInstance.html#getProperty">JSONInstance#getProperty</a> as the named property is converted using a parser defined by the schema's schema before being returned. This makes the return value of this method attribute dependent. </p> | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Parameters:</dt> | |
| <dt> | |
| <span class="light fixedFont">{String}</span> <b>key</b> | |
| </dt> | |
| <dd>The name of the attribute</dd> | |
| <dt> | |
| <span class="light fixedFont">{Any}</span> <b>arg</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>Some attribute parsers accept special arguments for returning resolved values. This is attribute dependent.</dd> | |
| </dl> | |
| <dl class="detailList"> | |
| <dt class="heading">Returns:</dt> | |
| <dd><span class="light fixedFont">{<a href="../symbols/JSONSchema.html">JSONSchema</a>|Any}</span> The value of the attribute</dd> | |
| </dl> | |
| <hr /> | |
| <a name="getAttributes"> </a> | |
| <div class="fixedFont"> | |
| <span class="light">{Object}</span> | |
| <b>getAttributes</b>() | |
| </div> | |
| <div class="description"> | |
| Returns all the attributes of the schema. | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Returns:</dt> | |
| <dd><span class="light fixedFont">{Object}</span> A map of all parsed attribute values</dd> | |
| </dl> | |
| <hr /> | |
| <a name="getLink"> </a> | |
| <div class="fixedFont"> | |
| <span class="light">{String|Object|undefined}</span> | |
| <b>getLink</b>(rel, instance) | |
| </div> | |
| <div class="description"> | |
| Convenience method for retrieving a link or link object from a schema. This method is the same as calling <code>schema.getAttribute("links", [rel, instance])[0];</code>. | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Parameters:</dt> | |
| <dt> | |
| <span class="light fixedFont">{String}</span> <b>rel</b> | |
| </dt> | |
| <dd>The link relationship</dd> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/JSONInstance.html">JSONInstance</a>}</span> <b>instance</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>The instance to resolve any URIs from</dd> | |
| </dl> | |
| <dl class="detailList"> | |
| <dt class="heading">Returns:</dt> | |
| <dd><span class="light fixedFont">{String|Object|undefined}</span> If <code>instance</code> is provided, a string containing the resolve URI of the link is returned. If <code>instance</code> is not provided, a link object is returned with details of the link. If no link with the provided relationship exists, <code>undefined</code> is returned.</dd> | |
| </dl> | |
| <dl class="detailList"> | |
| <dt class="heading">See:</dt> | |
| <dd><a href="../symbols/JSONSchema.html#getAttribute">JSONSchema#getAttribute</a></dd> | |
| </dl> | |
| <hr /> | |
| <a name="getReference"> </a> | |
| <div class="fixedFont"> | |
| <span class="light">{String}</span> | |
| <b>getReference</b>(name) | |
| </div> | |
| <div class="description"> | |
| Returns the value of the provided reference name. | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Parameters:</dt> | |
| <dt> | |
| <span class="light fixedFont">{String}</span> <b>name</b> | |
| </dt> | |
| <dd>The name of the reference</dd> | |
| </dl> | |
| <dl class="detailList"> | |
| <dt class="heading">Returns:</dt> | |
| <dd><span class="light fixedFont">{String}</span> The value of the provided reference name</dd> | |
| </dl> | |
| <hr /> | |
| <a name="getSchema"> </a> | |
| <div class="fixedFont"> | |
| <span class="light">{<a href="../symbols/JSONSchema.html">JSONSchema</a>}</span> | |
| <b>getSchema</b>() | |
| </div> | |
| <div class="description"> | |
| Returns the schema of the schema. | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Returns:</dt> | |
| <dd><span class="light fixedFont">{<a href="../symbols/JSONSchema.html">JSONSchema</a>}</span> The schema of the schema</dd> | |
| </dl> | |
| <hr /> | |
| <a name="setReference"> </a> | |
| <div class="fixedFont"> | |
| <b>setReference</b>(name, uri) | |
| </div> | |
| <div class="description"> | |
| Set the provided reference to the given value. <br/> References are used for establishing soft-links to other <a href="../symbols/JSONSchema.html">JSONSchema</a>s. Currently, the following references are natively supported: <dl> <dt><code>full</code></dt> <dd>The value is the URI to the full instance of this instance.</dd> <dt><code>describedby</code></dt> <dd>The value is the URI to the schema of this instance.</dd> </dl> | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Parameters:</dt> | |
| <dt> | |
| <span class="light fixedFont">{String}</span> <b>name</b> | |
| </dt> | |
| <dd>The name of the reference</dd> | |
| <dt> | |
| <span class="light fixedFont">{String}</span> <b>uri</b> | |
| </dt> | |
| <dd>The URI of the schema to refer to</dd> | |
| </dl> | |
| <hr /> | |
| <a name="validate"> </a> | |
| <div class="fixedFont"> | |
| <span class="light">{<a href="../symbols/Report.html">Report</a>}</span> | |
| <b>validate</b>(instance, report, parent, parentSchema, name) | |
| </div> | |
| <div class="description"> | |
| Validates the provided instance against the target schema and returns a <a href="../symbols/Report.html">Report</a>. | |
| </div> | |
| <dl class="detailList"> | |
| <dt class="heading">Parameters:</dt> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/JSONInstance.html">JSONInstance</a>|Any}</span> <b>instance</b> | |
| </dt> | |
| <dd>The instance to validate; may be a <a href="../symbols/JSONInstance.html">JSONInstance</a> or any JavaScript value</dd> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/Report.html">Report</a>}</span> <b>report</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>A <a href="../symbols/Report.html">Report</a> to concatenate the result of the validation to. If <code>undefined</code>, a new <a href="../symbols/Report.html">Report</a> is created.</dd> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/JSONInstance.html">JSONInstance</a>}</span> <b>parent</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>The parent/containing instance of the provided instance</dd> | |
| <dt> | |
| <span class="light fixedFont">{<a href="../symbols/JSONSchema.html">JSONSchema</a>}</span> <b>parentSchema</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>The schema of the parent/containing instance</dd> | |
| <dt> | |
| <span class="light fixedFont">{String}</span> <b>name</b> | |
| <i>Optional</i> | |
| </dt> | |
| <dd>The name of the parent object's property that references the instance</dd> | |
| </dl> | |
| <dl class="detailList"> | |
| <dt class="heading">Returns:</dt> | |
| <dd><span class="light fixedFont">{<a href="../symbols/Report.html">Report</a>}</span> The result of the validation</dd> | |
| </dl> | |
| <!-- ============================== event details ========================= --> | |
| <hr /> | |
| </div> | |
| <!-- ============================== footer ================================= --> | |
| <div class="fineprint" style="clear:both"> | |
| Documentation generated by <a href="http://code.google.com/p/jsdoc-toolkit/" target="_blank">JsDoc Toolkit</a> 2.4.0 on Wed Sep 14 2011 18:53:24 GMT-0600 (MDT) | |
| </div> | |
| </body> | |
| </html> | |