Including the files
First of all, as jsTree is a jQuery component, you need to include jQuery itself. Currently jsTree uses version 1.3.2 (the latest as of 14.Sept.2009)

Then you need to include jsTree:

Or you could use the minified version:

You may change the path to whatever you like, but it is recommended not to rename jquery.tree.js
or jquery.tree.min.js
as the filenames are used in path autodetection. If you decide to rename them make sure you set the theme_path
config option, so that jsTree succesfully includes your chosen theme (you also MUST set this option if you decide to move the folder of your chosen theme out of jstree-location/themes/
).
Additionally you may decide to include some of the plugins from the plugins/
folder. If you do that the first time you open a page the plugin you loaded will alert you about missing dependancies - they can all be found lib/
folder.
Creating an instance
You can create an instance in one of two ways. Make sure that you do not use an

node for the container node.
Method 1:
jQuery("selector-to-container-node-here").tree( options * );
* You may pass the configuration options as a parameter to the tree()
function. Detailed information about configuring can be found below.
If you use this method, to get the address the instance you just created use this code:
jQuery.tree.reference( selector * );
* Selector can be: the ID of the container node, the ID of any contained DOM element, an actual DOM element contained within the tree, or a jQuery extended DOM node container within the tree
Method 2:
var your-tree-var = jQuery.tree.create();
your-tree-var.init( options * )
* You may pass the configuration options as a parameter to the init()
function. Detailed information about configuring can be found below.
If you use this method, the your-tree-var
is a reference to the instance. You can still use jQuery.tree.reference()
. A note regarding IE8 - it has been known to cause some trouble if you use tree
as variable name, so please don't.
The object storing all default values for newly created instances can be found in jQuery.tree.defaults
. If you extend or modify the object, all instances created after the modification will use the modified object as default settings. When configuring an instance only pass those values, that are different from the defaults.
data
Object
This section of the config stores all data source related settings.
data.async
Boolean
If this is set to true
a request will be made each time a closed node is opened, and its data is not yet loaded.
Default is false
.
data.type
String
A string specifying one of the included datastores ("html"
and "json"
are in the main source file (jquery.tree.js
) and "xml_flat"
and "xml_nested"
are available in the plugins/
directory).
Default is "html"
.
data.opts
Object
An object specifying all the options for the chosen datastore.
Default is { method: "GET", url: false }
.
data.opts.method
String
The method used when querying the server for data. Either "GET"
or "POST"
. Keep in mind that while all included datastore plugins respect this setting, other third party datastore plugins may choose not to.
Default is "GET"
.
data.opts.url
String
The URL used when querying the server for data. You may specify GET parameters here, or use the beforedata
callback.
Default is false
.
selected
mixed
A single node ID, or a list of node IDs to be initially selected when the tree first loads. Either a String
, an Array
or false
.
Default is false
.
opened
Array
An array of node IDs to be initially opened when the tree first loads.
Default is []
.
languages
Array
An array of string values, each one representing a language. Keep in mind those string will be used internally for CSS classes, so each string must be a valid CSS classname (a safe approach is to use typical language codes "en"
, "de"
, etc).
Default is []
.
ui
Object
This section of the config stores various user interface related settings.
ui.dots
Boolean
Should the tree have guiding dots or not.
Default is true
.
ui.animation
Integer
The duration in milliseconds of the open/close animation.
Default is 0
(meaning no animation).
When dragging near the edge of the tree container it scrolls if neccessary. This setting controls the speed of the scroll.
Default is 4
.
ui.selected_parent_close
mixed
This option specifies the behavior of the tree when a parent of a selected node is closed. The options are "select_parent"
- which deselects the selected node and selects the closed one (similar to windows explorer), "deselect"
- only deselects the selected node or false
- does nothing.
Default is "select_parent"
.
ui.selected_delete
mixed
This option specifies the behavior of the tree when a selected node is deleted. The options are "select_previous"
- which selects the previous node (similar to windows explorer) or false
- does nothing.
Default is "select_previous"
.
ui.theme_path
String
The folder where jsTree's themes are located. If this is set to false, jsTree will autodetect the folder using its own folder location and appending themes/
at the end.
Default is false
(meaning autodetect).
ui.theme_name
String
The theme to use. If set to false
no theme is loaded.
Default is "default"
.
types
Object
This section of the config stores all defined node types and their possible interactions. Each setting (except for icon
) may be set to a function - if so whenever a user interaction is evaluated this function will be invoked and will receive two arguments - the node that is being checked and the tree instance. In any new types you define you may only supply the rules that are different from the default type.
By default only the "default"
node type is defined:
{
"default" : {
clickable : true,
renameable : true,
deletable : true,
creatable : true,
draggable : true,
max_children : -1,
max_depth : -1,
valid_children : "all",
icon : {
image : false,
position : false
}
}
}
type.clickable
mixed
Are nodes of this type clickable. Boolean
or Function
.
type.renameable
mixed
Are nodes of this type renameable. Boolean
or Function
.
type.deletable
mixed
Are nodes of this type deletable. Boolean
or Function
.
type.creatable
mixed
Can new nodes be created in nodes of that type. Boolean
or Function
.
type.draggable
mixed
Are nodes of this type draggable. Boolean
or Function
.
type.max_children
mixed
The maximum number of direct children allowed in this type of node. -1
means unlimited amount of direct children, 0
means no children are allowed, 1
means maximum one child is allowed, etc. Integer
or Function
.
type.max_depth
mixed
The maximum number of levels below this type of node. -1
means unlimited amount of levels, 0
means no children are allowed, 1
means maximum one level is allowed, etc. Integer
or Function
.
type.valid_children
mixed
Types of nodes allowed inside this type of node. Can be an Array
of string values (one for each allowed type), if set to String
"all"
nodes of any type can be children of a nodes of this type. Can also be a Function
type.icon
Object
An optional configuration of the icon used for that node type. If using a sprite (a big image with a lot of icons in it) define the image
property on the "default"
node type and for all other types just define the position
property (in the form of CSS top/left offset - "-16px -32px"). Keep in mind IE6 is not supported (internally this uses a node[attribute=value] > node
selector).
Default is: { image : false, position : false }
, which means the icon is defined in the theme.
rules
Object
This section is for defining a few rules for the whole tree.
rules.multiple
mixed
This controls multiple selection. Can be either false
- multiple selection is off, "ctrl"
- multiple selection is on when the Ctrl key is held down or "on"
- multiple selection is always on.
Default is: "ctrl"
rules.multitree
mixed
This controls accepting nodes from other trees. Can be either "none"
- will not accept any nodes from any tree, "all"
- will accept from any tree or Array
- an array of strings, each one representing the ID of the container of a tree to accept from.
Default is: "none"
rules.type_attr
String
The attribute to read the type of the node from.
Default is: "rel"
rules.createat
String
Specifies the default location to insert new nodes at - at the top amongst the parent node's children or at the bottom. Also controls what happens if a node is dropped onto another node. Should be either "top"
or "bottom"
.
Default is: "bottom"
rules.drag_copy
mixed
This controls how to copy when dragging. Can be either false
- when the user drags a move is always performed, "ctrl"
- a copy is made if the Ctrl key is held down or "on"
- the drag always results in a copy.
Default is: "ctrl"
This controls which button initiates a drag. Can be either "left"
, "right"
or "both"
.
Default is: "left"
rules.use_max_children
Boolean
Should max_children rules be checked when moving/copying nodes.
Default is: true
rules.use_max_depth
Boolean
Should max_depth rules be checked when moving/copying nodes.
Default is: true
type.max_children
Integer
The maximum number of root nodes allowed. -1
means unlimited amount of root nodes, 1
means maximum one root node is allowed, etc.
Default is: -1
type.max_depth
Integer
The maximum number of levels. -1
means unlimited amount of levels, 1
means maximum one level is allowed, etc.
Default is: -1
type.valid_children
mixed
Types of nodes allowed as root nodes. Can be an Array
of string values (one for each allowed type), if set to String
"all"
nodes of any type can be root nodes.
Default is: "all"
langs
Object
This section of the config stores various settings related to languages.
lang.new_node
mixed
The default name for newly created nodes (if the new name is not specified on creation). Can be a String
or an Array
of strings for each defined language. If you use multiple languages but set this to a single string - it will be used in all languages.
Default is "New folder"
.
lang.loading
String
The string displayed when loading content from the server.
Default is "Loading ..."
.
callback
Object
This section is for defining all callback functions which fire on various events.
callback.beforechange
Should return: Boolean
Triggered before selection changes. Receives two parameters - the node involved in the event and a reference to the tree instance. If false
is returned selection is not changed.
Default is: function(NODE, TREE_OBJ) { return true }
callback.beforeopen
Should return: Boolean
Triggered before opening a node. Receives two parameters - the node about to be opened and a reference to the tree instance. If false
is returned the node is not opened.
Default is: function(NODE, TREE_OBJ) { return true }
callback.beforeclose
Should return: Boolean
Triggered before closing a node. Receives two parameters - the node about to be closed and a reference to the tree instance. If false
is returned the node is not closed.
Default is: function(NODE, TREE_OBJ) { return true }
callback.beforemove
Should return: Boolean
Triggered before moving a node. Receives four parameters - the node about to be moved, the reference node in the move, the new position relative to the reference node (one of "before"
, "after"
or "inside"
) and a reference to the tree instance. If false
is returned the node is not moved.
Default is: function(NODE, REF_NODE, TYPE, TREE_OBJ) { return true }
callback.beforecreate
Should return: Boolean
Triggered before creating a node. Receives four parameters - the node about to be created, the reference node in the creation, the new position relative to the reference node (one of "before"
, "after"
or "inside"
) and a reference to the tree instance. If false
is returned the node is not created.
Default is: function(NODE, REF_NODE, TYPE, TREE_OBJ) { return true }
callback.beforerename
Should return: Boolean
Triggered before renaming a node. Receives three parameters - the node about to be renamed, the current language and a reference to the tree instance. If false
is returned the node is not renamed.
Default is: function(NODE, LANG, TREE_OBJ) { return true }
callback.beforedelete
Should return: Boolean
Triggered before deleting a node. Receives two parameters - the node about to be deleted and a reference to the tree instance. If false
is returned the node is not deleted.
Default is: function(NODE, TREE_OBJ) { return true }
callback.beforedata
Should return: Object
Used for passing custom parameters to the server. Receives two parameters - a node (if applicable) and a reference to the tree instance.
Default is: function(NODE, TREE_OBJ) { return { id : $(NODE).attr("id") || 0 } }
callback.ondata
Should return: mixed
Used for modifying the data received from the server before parsing it.
Default is: function(DATA, TREE_OBJ) { return DATA; }
callback.onparse
Should return: String
Used for modifying the HTML about to be inserted in the DOM before actually inserting it.
Default is: function(STR, TREE_OBJ) { return STR; }
callback.onhover
Triggered when a node is hovered. Receives two parameters - the hovered node and a reference to the tree instance.
Default is: function(NODE, TREE_OBJ) { }
callback.onselect
Triggered when a node is selected. Receives two parameters - the selected node and a reference to the tree instance.
Default is: function(NODE, TREE_OBJ) { }
callback.ondeselect
Triggered when a node is deselected. Receives two parameters - the deselected node and a reference to the tree instance.
Default is: function(NODE, TREE_OBJ) { }
callback.onchange
Triggered when selection is changed in any way (select or deselect). Receives two parameters - the node involved and a reference to the tree instance.
Default is: function(NODE, TREE_OBJ) { }
callback.onrename
Triggered when a node is renamed. Receives three parameters - the renamed node, a reference to the tree instance and a rollback object that you can use with jQuery.tree.rollback
.
Default is: function(NODE, TREE_OBJ, RB) { }
callback.onmove
Triggered when a node is moved. Receives five parameters - the node that was moved, the reference node in the move, the new position relative to the reference node (one of "before"
, "after"
or "inside"
), a reference to the tree instance and a rollback object that you can use with jQuery.tree.rollback
.
Default is: function(NODE, REF_NODE, TYPE, TREE_OBJ, RB) { }
callback.oncopy
Triggered when a node is copied. Receives five parameters - the node that was copied, the reference node in the copy, the new position relative to the reference node (one of "before"
, "after"
or "inside"
), a reference to the tree instance and a rollback object that you can use with jQuery.tree.rollback
.
Default is: function(NODE, REF_NODE, TYPE, TREE_OBJ, RB) { }
callback.oncreate
Triggered when a node is created. Receives five parameters - the node that was created, the reference node in the create operation, the new position relative to the reference node (one of "before"
, "after"
or "inside"
), a reference to the tree instance and a rollback object that you can use with jQuery.tree.rollback
.
Default is: function(NODE, REF_NODE, TYPE, TREE_OBJ, RB) { }
callback.ondelete
Triggered when a node is deleted. Receives three parameters - the node that was deleted, a reference to the tree instance and a rollback object that you can use with jQuery.tree.rollback
.
Default is: function(NODE, TREE_OBJ, RB) { }
callback.onopen
Triggered when a node is opened. Receives two parameters - the node that was opened and a reference to the tree instance.
Default is: function(NODE, TREE_OBJ) { }
callback.onopen_all
Triggered when a open_all
operation completes. Receives one parameter - a reference to the tree instance.
Default is: function(TREE_OBJ) { }
callback.onclose
Triggered when a node is closed. Receives two parameters - the node that was closed and a reference to the tree instance.
Default is: function(NODE, TREE_OBJ) { }
callback.onclose_all
Triggered when a close_all
operation completes. Receives one parameter - a reference to the tree instance.
Default is: function(TREE_OBJ) { }
callback.error
Triggered when an error occurs. Receives two parameters - the error string and a reference to the tree instance.
Default is: function(TEXT, TREE_OBJ) { }
callback.ondblclk
Triggered when a node is doubleclicked. Receives two parameters - the node that was doubleclicked and a reference to the tree instance.
Default is:
function(NODE, TREE_OBJ) {
TREE_OBJ.toggle_branch.call(TREE_OBJ, NODE);
TREE_OBJ.select_branch.call(TREE_OBJ, NODE);
}
callback.onrgtclk
Triggered when a node is rightclicked. Receives three parameters - the node that was rightclicked, a reference to the tree instance and the event object. To prevent the browser menu use:
function(NODE, TREE_OBJ, EV) {
EV.preventDefault();
EV.stopPropagation();
return false;
}
Default is: function(NODE, TREE_OBJ, EV) { }
callback.onload
Triggered when the tree is loaded with data for the first time or refreshed. Receives one parameter - a reference to the tree instance.
Default is: function(TREE_OBJ) { }
callback.oninit
Triggered when the tree is initialized and before any data is requested or parsed. Receives one parameter - a reference to the tree instance.
Default is: function(TREE_OBJ) { }
callback.onfocus
Triggered when the tree is focused. When creating a new tree it is always focused and the callback fires after oninit
, but if a data request should be made to the server - possibly before onload
. Receives one parameter - a reference to the tree instance.
Default is: function(TREE_OBJ) { }
callback.ondestroy
Triggered before the tree is destroyed. Receives one parameter - a reference to the tree instance.
Default is: function(TREE_OBJ) { }
callback.onsearch
Triggered after a search is performed and results are ready. Receives two parameters - a jQuery collection of nodes matching the search and a reference to the tree instance.
Default is: function(NODES, TREE_OBJ) { NODES.addClass("search"); }
callback.ondrop
Triggered when a foreign node is dropped on the tree. Receives four parameters - the foreign node that was dropped, the reference node in the move, the new position relative to the reference node (one of "before"
, "after"
or "inside"
) and a reference to the tree instance.
Default is: function(NODE, REF_NODE, TYPE, TREE_OBJ) { }
callback.check
Triggered when a node is checked for a certain rule. Receives four parameters - the rule that is checked, the node that is checked, the value computed so far (as the callback is called last - before that types are evaluated) and a reference to the tree instance.
Default is: function(RULE,NODE,VALUE,TREE_OBJ) { return VALUE; }
callback.check_move
Should return: Boolean
Triggered when a move is evaluated. Receives four parameters - the node that is moved, the reference node in the move, the new position relative to the reference node (one of "before"
, "after"
or "inside"
) and a reference to the tree instance.
Default is: function(NODE, REF_NODE, TYPE, TREE_OBJ) { return true; }
plugins
Object
This section is for defining active plugins on the instance. Each plugin is a key in this object, and corresponding to that key is the options object for the plugin. For example:
plugins : {
"plugin-name" : { plugin-option-one : "value", plugin-option-two : { } }
"second-plugin" : { } // This just activates the plugin without modifying its defaults.
}
Default is: { }
In this section you will find the data format description of the two bundled datasources.
HTML
The simplest of datastores. Used when you need to converted a nested list into an interactive tree. The required structure is as follows:
<some-container-node>

 Root node

 Child node

</some-container-node>
You can have whatever attributes you like in any of the elements. Also keep in mind that the node ID and type can be omitted and the node type may be stored in some other attribute if you decide to configure it (check the type_attr
section).
If you use language versions you will have multiple
(one for each language) elements inside any

element, they must have a language code (one of the codes defined in the langauges
section of the config) for a classname. Like so:

 Title in English
 Title in Bulgarian

JSON
The JSON data format is definitely the most widely used amongst jsTree users. Each node has the following structure:
{
attributes: { id : "node_identificator", some-other-attribute : "attribute_value" },
data: "node_title",
// Properties below are only used for NON-leaf nodes
state: "closed", // or "open"
children: [ /* an array of child nodes objects */
]
}
As you can see you can pass any attributes you like in the attributes
object - in the resulting HTML output those attributes are bound to the

element. If you have a leaf node (one with no children) omit the state
and children
properties.
If you need to specify some attributes for the
node in the output, or want to set a custom icon instead of a string, pass an object for the data section. Like so:
{
attributes: { id : "node_identificator", some-other-attribute : "attribute_value" },
data: { title : "Node title", icon : "path_to/icon.pic", attributes : {"key" : "value" } },
// Properties below are only used for NON-leaf nodes
state: "closed", // or "open"
children: [ /* an array of child nodes objects */ ]
}
If language versions are used use this syntax for the data property:
data: {
"en" : "Title in English",
"bg" : "Title in Bulgarian"
}
Or if you need icons and attributes:
data: {
"en" : { title : "Title in English", icon : "path_to/icon.pic", attributes : { "key" : "value" } },
"bg" : "Title in Bulgarian"
}
As you can see - you can mix the short and long syntax.
jQuery(selector).tree([options])
Return value: jQuery
Used on a jQuery selector the tree function converts all matched elements to trees, using the options provided. If a tree already exists in one of the selected DOM nodes, it is first destroyed and then recreated using the passed options object.
Arguments:
object
options
An optional object, specifing all the options for the tree (or trees) that will be created. This object internally extends the global defaults object. So you may only pass values that are different from the defaults.
Functions and properties bound directly to the global tree object.
jQuery.tree.create()
Return value: jsTree
Creates a new tree instance. Accepts no arguments - the configuration object is passed in a subsequest init
call on the returned tree object.
jQuery.tree.datastores
This object stores all defined datastores on a global level. Every added datastore extends this object. In order to use a datastore in a tree instance, the datastore should be defined in this object.
jQuery.tree.defaults
The object storing all default values for newly created instances. If you extend or modify the object, all instances created after the modification will use the modified object as default settings. This means that you can even define plugins that should be active on all instances.
jQuery.tree.drag_start
function
You can set this to a function - it will be called each time the user initiates a drag. You will receive the event object and a jsTree drag_drop object as parameters. Please note that you attach this callback globally and not on a specific instance. To get the instance involved in the drag start - use the jQuery.tree.reference()
function.
jQuery.tree.drag
function
You can set this to a function - it will be called each time the mousemove event is fired. You will receive the event object and a jsTree drag_drop object as parameters. Please note that you attach this callback globally and not on a specific instance. To get the instance/instances involved in the drag - use the jQuery.tree.reference()
function.
jQuery.tree.drag_end
function
You can set this to a function - it will be called each time the user finishes a drag. You will receive the event object and a jsTree drag_drop object as parameters. Please note that you attach this callback globally and not on a specific instance. To get the instance/instances involved in the drag - use the jQuery.tree.reference()
function. Do not confuse with the onmove callback which will also be fired if there was a valid move.
jQuery.tree.drop_mode([options])
Return value: none
This function sets all initialized trees on the page in "drop mode", meaning that all the trees start handling mouseover events and evaluating the possible drop, and giving the user feedback.
Arguments:
object
options
An optional object, specifing a few options:
-
boolean
show
Should there be a drag helper. Defaults to false
.
-
string
type
The node type that should be used for the current drop when evaluating the drag rules. Defaults to "default"
.
-
string
str
The text used in the drag helper. Defaults to "Foreign node"
.
jQuery.tree.focused()
Return value: jsTree
This functions returns the currently focused tree instance.
jQuery.tree.plugins
This object stores all defined plugins on a global level. Every added plugin extends this object. In order to use a specific plugin, it should be defined in this object. Only having a plugin defined here, does not mean it is activated with every instance. If you want to use a plugin with an instance you should define that in the particular instance config.
jQuery.tree.reference(needle)
Return value: jsTree
This functions returns a specific tree instance by an ID or contained node.
Arguments:
mixed
needle
This can be either the instance ID (the ID of the container node), an ID of any contained DOM element, an actual DOM element contained within the tree, or a jQuery extended DOM node container within the tree.
jQuery.tree.rollback(data)
Return value: none
This function performs a rollback when passed a rollback object. It sets all trees involved in the rollback to the state described in the rollback object.
Arguments: object
data
This is a rollback object, usually obtained in a callback or by calling get_rollback
on a specific instance.
Functions and properties in a tree instance
attach_events()
Return value: none
This function binds all the events required for user interaction with the tree. It only fires once at creation time. It is used internally.
callback(callback_name, arguments)
Return value: none
This function is used internally. It fires all callbacks.
Arguments: string
callback_name
The callback to fire.
array
args
The arguments for the callback.
check(rule, node)
Return value: boolean
Checks if a certain action is allowed on a node (for example create, delete, rename, etc) and returns true
or false
accordingly. Used mainly internally.
Arguments:
string
rule
The rule you want to check.
mixed
node
A DOM node, jQuery object or selector, pointing to the node you want to check inside the tree.
check_move(node, ref_node, move_type)
Return value: boolean
Checks if a certain move is allowed. Used mainly internally.
 Returns false
on failure.
Arguments:
mixed
reference_node
The reference node. A DOM node, jQuery object or selector, pointing to a node inside the tree.
close_all([node])
Closes all nodes, so that their children are not visible. Has no return value, but returns false
on failure (invalid node for example).
Arguments:
mixed
node
Optional argument. A DOM node, jQuery object or selector, pointing to a node inside the tree. If passed only this node and its children are closed, if not passed - every node in the tree is closed.
close_branch(node [, disable_animation])
Close a node, so that its children are not visible. Has no return value, but returns false
on failure (invalid node for example).
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
boolean
disable_animation
Optional argument. If true
is passed, there will be no animation regardless of the settings in the tree config.
cntr
The number of the tree. This is used internally.
copy([node])
Marks a node as copied. A paste operation following the copy operation will create a copy of that node. Has no return value, but returns false
on failure (invalid node for example).
Arguments:
mixed
node
Optional argument - the node to be copied. A DOM node, jQuery object or selector, pointing to a node inside the tree. If omitted the currently selected node (or nodes) are marked.
create([data, reference_node, position])
Return value: jQuery
Create a new node. Please note this function should mainly be used for user interaction and not for populating the tree initially. Returns the newly created node or false
on failure.
Arguments:
object
data
Optional argument. The object follows the built in JSON structure, so you can specify name (or names if using language versions) for the newly created node, attributes, type of the node, open/closed state, etc. If omitted the new node's type is "default" and as soon as it is inserted the rename
function is called on the node.
mixed
reference_node
Optional argument. A DOM node, jQuery object or selector, pointing to a node inside the tree. If -1
is passed a new root node is created. If omitted the currently selected node is used as reference node.
mixed
position
Optional argument. Possible values are "before"
, "after"
or "inside"
, which mark the position relative to the reference node. An integer may also be passed - in that case the new node will be created at that specific offset among the reference node's children.
current_lang
The language code of the currently visible language.
cut([node])
Marks a node as cut. A paste operation following the cut operation will move that node. Has no return value, but returns false
on failure (invalid node for example).
Arguments:
mixed
node
Optional argument - the node to be cut. A DOM node, jQuery object or selector, pointing to a node inside the tree. If omitted the currently selected node (or nodes) are marked.
deselect_branch(node)
Removes the selected state from a node in the tree. Has no return value, but returns false
on failure (invalid node for example).
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
destroy()
Destroys the instance.
error(error_string)
Return value: false
All errors go through this function. Used internally.
Arguments:
string
error_string
focus()
This function sets the current tree as the focused one in the page.
get([node, format, options])
Return value: mixed
Return the whole tree or a part of it in a given format.
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree. This is the node you want returned, if this argument omitted the whole tree is returned.
string
format
Optional argument. The format you want the returned data in. It should be one of the defined datasources. If omitted the tree's current datasource is used.
object
options
Optional argument. The options for the datasource - if omitted, the tree's current options are used.
get_lang()
Return value: string
This function is only useful if language versions are used. Returns the currently visible language or false
on failure.
get_node(node)
Return value: jQuery
This function returns the jQuery extended LI DOM node that represents a given tree node.
 The rollback object actually has two properties html
(containing the HTML of the container) and selected
(the ID of the last selected node - if there is one).
get_text(node [, language])
Return value: string
This function returns the title of the node passed as first parameter.
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
string
language
This parameter is optional and only useful if language versions are used. You may specify the language in which you want the title (it should be one of the defined languages). If you ommit this parameter the title is returned in the currently visible language.
get_type(node)
Return value: string
This function returns the type of a node (types are used to determine nesting/interaction rules). The function returns "default"
if no type attribute is found.
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
hover_branch(node)
Sets a node in the tree as hovered. Has no return value, but returns false
on failure (invalid node for example).
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
init(element [, config])
This function initializes a tree in the given container element, using the optional config passed as a parameter. Usually used after create()
.
Arguments:
mixed
element
This is a DOM node, jQuery object, or a valid jQuery selector, pointing to a container element. This parameter is required.
object
config
An optional object, specifing all the options for the tree (or trees) that will be created. This object internally extends the global defaults object. So you may only pass values that are different from the defaults.
lock(state)
Locks or unlocks the tree instance. A locked tree blocks all user interactions.
Arguments:
boolean
state
To lock or unlock (true
means lock).
locked
A boolean indicating the lock state of the tree.
moved(what, where, how [, is_new, is_copy, rollback])
Return value: jQuery
This function is used internally. It performs all moves and manipulates the DOM. Returns the moved node, but there is no return value if there are multiple moves to be performed or the required data is not yet loaded.
Arguments:
mixed
what
The node (or nodes) to move/copy/create. A DOM node, jQuery object or selector, pointing to a node inside the tree.
mixed
where
The reference node in the operation. A DOM node, jQuery object or selector, pointing to a node inside the tree.
string
how
One of "before"
, "after"
or "inside"
.
boolean
is_new
If it is a create operation.
boolean
is_copy
If it is a copy operation.
object
rollback
The rollback object created in the first call to the moved
function.
next(reference_node [, strict])
Return value: jQuery
Get the node next to the reference node. Returns false
on failure.
Arguments:
mixed
reference_node
The reference node. A DOM node, jQuery object or selector, pointing to a node inside the tree.
boolean
strict
Optional argument - if set to true
only siblings are returned (nodes within the same parent as the reference node). If not present or false
behaves like in Windows explorer - when the last child is the reference node the next sibling of the parent node is returned.
off_height()
This function computates the offset of the tree's container node, and also the height of a single node. It is used internally.
open_all([node, callback])
Open all nodes, so that their children are visible. Returns false
on failure.
Arguments:
mixed
node
Optional argument. A DOM node, jQuery object or selector, pointing to a node inside the tree. If passed only this node and its children are opened, if not passed - every node in the tree is opened.
function
callback
Optional argument. A function to be executed once the operation is complete. Used internally, if you need similiar functionality use the onopen_all
callback.
open_branch(node [, disable_animation, callback])
Return value: boolean
Open a node, so that its children are visible. Returns true
if succesfull, false
if not.
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
boolean
disable_animation
Optional argument. If true
is passed, there will be no animation regardless of the settings in the tree config.
function
callback
Optional argument. A function to be executed once the operation is complete. Used internally, if you need similiar functionality use the onopen
callback.
parent(reference_node)
Return value: mixed
Get the parent node of the reference node. Normally returns a jQuery
extended node, but will return -1
if a root node is passed as reference node, or false
on failure (invalid reference node for exmaple).
Arguments:
mixed
reference_node
The reference node. A DOM node, jQuery object or selector, pointing to a node inside the tree.
paste([node, position])
Pastes any copied or cut nodes in the new position. Has no return value, but will return false
on failure.
Arguments:
mixed
node
Optional argument - the reference node in the operation. A DOM node, jQuery object or selector, pointing to a node inside the tree. If omitted the currently selected node (or nodes) are marked.
mixed
position
Optional argument. Possible values are "before"
, "after"
or "inside"
, which mark the position relative to the reference node. An integer may also be passed - in that case the node will be moved/copied at that speicific offset among the reference node's children.
prev(reference_node [, strict])
Return value: jQuery
Get the node previous to the reference node. Returns false
on failure.
Arguments:
mixed
reference_node
The reference node. A DOM node, jQuery object or selector, pointing to a node inside the tree.
boolean
strict
Optional argument - if set to true
only siblings are returned (nodes within the same parent as the reference node). If not present or false
behaves like in Windows explorer - when a first child is the reference node the parent node is returned.
refresh([element])
This function refreshes the whole tree, or a given node (if passed as a parameter). Opened nodes and selected nodes are saved and reopened/reselected (the reselect
function is used for reselecting and reopening).
Arguments:
mixed
element
This is a DOM node, jQuery object, or a valid jQuery selector, pointing to a node in the tree. If this parameter is passed, only that node is refreshed, if this parameter is absent, the whole tree is refreshed.
remove([node])
Removes a node. Has no return value, but will return false
on failure.
Arguments:
mixed
node
Optional argument - the node to be removed. A DOM node, jQuery object or selector, pointing to a node inside the tree. If omitted the currently selected node is removed.
rename([node, new_name])
Rename a node. If language versions are used only the title in the currently visible language is modified. Has no return value, but will return false
on failure.
Arguments:
mixed
node
Optional argument - the node to be renamed. A DOM node, jQuery object or selector, pointing to a node inside the tree. If omitted the currently selected node is renamed.
string
new_name
Optional argument - the new name. If omitted - an input box is displayed.
reselect([is_callback])
This function reselects and reopens nodes in the tree after a refresh. It is used internally.
Arguments:
boolean
is_callback
As the function sometimes calls recursively this parameter shows if this is a recursive call, or the first one.
This function detects the need to scroll and scrolls the container (if neccessary) while the user drags a node (or nodes). It is used internally.
Arguments:
number
x
The x coordinate to check.
number
y
The y coordinate to check.
This function scrolls the container node so that the node passed as parameter is in view. If the parameter is missing the currently selected node is used.
 If async is used a request is made to the server, the response should contain the comma-separated IDs of nodes that need to be opened so that all nodes that match the search string are visible. The search string is provided in the request. The function triggers the onsearch
callback, with the nodes found as a parameter.
Arguments:
string
needle
The search string.
string
compare_function
Optional argument. The jQuery function to be used for comparing titles to the string - defaults to "contains"
.
selected
The currently selected jQuery extended node (if mutliselect is possible this holds the lastly selected node).
selected_arr
An array of jQuery extended DOM nodes that are currently selected.
select_branch(node [, is_multiple])
Sets a node in the tree as selected. Has no return value but will return false
on failure (invalid node for example).
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
boolean
is_multiple
Optional argument. If true
is passed, it will trigger multiselect (the previously selected node won't be deselected, but the both nodes will be selected).
settings
All the settings for the current tree. You can modify some of the properties at runtime.
set_lang(lang)
Return value: boolean
This function is only useful if language versions are used. Sets the current language to the specified one so that the tree is visible in that language. Returns true
on success and false
otherwise.
Arguments:
mixed
lang
Either one of the language strings defined in the tree's config, or its key in the array.
set_type(type [, node])
This function sets the type of a node to a given value (types are used to determine nesting/interaction rules).
Arguments:
string
type
The new type of the node.
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree. This argument is optional - if not specified - the currently selected node is used.
toggle_branch(node)
Return value: boolean
Toggles the opened/closed state of the node. Returns true
on success and false
otherwise.
Arguments:
mixed
node
A DOM node, jQuery object or selector, pointing to a node inside the tree.
toggle_dots()
Turns dots on or off.
others
A few other variables may emerge at runtime, but they are only used internally, such as: srch
, srch_opn
, hovered
, offset
, is_partial_refresh
, opened
, cl_count
, li_height
, inp
.


PLOTUTILS(1) Debian GNU/Linux PLOTUTILS(1) NAME plotutils - The GNU plotting utilities. DESCRIPTION plotutils does not have a full set of useful man pages. Most of the doc‐ umentation is available through the info system. The relevant command is "info plotutils". Debian Project 27th July 1998 PLOTUTILS(1)


This element can be dragged around the stack using the mouse.
Drag and drop the element to test its sensors correctly collide with underlying canvas entitys
Note: there is currently a very annoying, persistent error where the element fails to update its path after its stack is resized as part of page initiation. A temporary fix (a setTimeout function) has been applied in the demo build code, but this is an unsatisfactory solution as there's a visible flash of red dots at the top of the stack while the display waits for the timeout to trigger. This needs to be fixed.
The same bug (and the same fix) occurs on demo DOM-015 (which was built using this demo as a template).


Planning, Training and Implementation of various aspects of Disaster Risk Management for
the Kumbh Mela 2015-16 at Nashik
. Kumbh Mela is a mass Hindu piligrimage of faith in which Hindus gather gather to bathe in a sacred river.
- Preparation of Disaster Management Plan for a Mass Scale gathering of a size of around 15 million +
piligrims
- Venue Assesment -Conducting HVRA of Core area which includes, Outer Parkings, Inner Parkings, Piligrim
routes, Shai Marg, Ghats etc.
- Risk Analysis to mitigate risks.
- Preparation of Training Modules basis Risk & Vulnerability Analysis.
- Training of trainers(TOT) on Crowd Management basis above.
- Training of Constabulary comprising around 15000 personnel to handle such humongous mass gathering.
- Training of officers.
Prepared Disaster Management Plan for Nashik Collectorate for the Kumbh Mela 2015-16 at
Nashik.
Planning, Training & Implementation for Shirdi Trust and Shirdi Police Personnel in
Crowd and Disaster Risk Management for Shri Sai Baba Mahasamadhi Centenary Ceremony to be held at Shirdi
2017-2018
- Conducting Hazard, Risk, Vulnerability, Capacity Analysis(HRVC) of Shirdi
- Developing Risk Mitigation Plans and Evacuation Plans.
- Resource positioning Plan.
- Training of Police Personnel in Disaster Risk Management and Crowd Management
- Conducting Table Top Exercises and Mock drills periodically to test the Preparation Level of the
Personnel.
Urban Crime and Violence Prevention Project with Nashik Police Commissionrate and
Nashik IG Police
- Currently we are associated with the Nashik City Police and Nashik Rural Police in Urban Crime &
Violence Prevention Program in which College based Crime & Violence Prevention plays a major part.
College violence prevention efforts are an important part of a comprehensive community safety strategy as
there is a strong connection between College violence, Community wellbeing and Social capital. In fact
College violence is a subset
of Community Crime and Violence. As a result, increased levels of College violence may result in increased
levels of overall crime and violence in the community. Educators can assist the network of institutions
working to identify working to
identify and stop the cycle of violence.
Imparted training to 250 RTO Inspectors in :-
- Comprehensive Disaster Risk Reduction Strategies
- Accident Reduction Enforcement Strategies
Training of Nashik Rural Police in Response and Rescue Operations in case of any Natural
or Man-made Mishap during events of mass scale gatherings at Trimbakeshwar Temple and Shri Saptshrungi God
temple.
Project on “ Sexual Harassment of Women & Students at Workplace’’ at Sandip Foundation
which has around 2500+ Women students and Staff & Establishing Reporting Mechanisms .
Formation of Special Action Team (SAT Commandos)of Solapur Rural Police at Pandharpur
for Ashadhi Ekadashi Wari and training them in Crowd Management , Maneuvering, Quick Evac. & Rescue Ops.
Training of Gamma Commandoes from Solapur Rural Police Personnel in Sabotage , Traffic
Management and effective Communication and Crisis Defusion. They have the role of accompanying the biggest
Palkhis from their Source till Pandharpur during Ashadhi Ekadashi Wari.
Training of School and College students in First Response and Emergency Management.
Planning and Implementation of “ Zero Tolerance-Safe Highway Pilot” being run at Mumbai
-Nashik Expressway Ltd
(MNEL) section of NH-03
Administering Road Safety Advocacy and Training in Educational Institutions at Nashik
District in collaboration with MoRTH India.
Raising Road Safety consciousness among the Road users and Stakeholders at Nashik
District in collaboration with MoRTH India.
Collaborated with Ministry of Internal Security, Government of Jamaica for Citizen
Security and Justice Programme (CSJP) under Urban Crime and Violence Prevention Programme.
Ex -ante Disaster Management activities pertaining to Crowd Management for Shree
Saptashrungi Niwas Devi Trust(Nashik District, Maharashtra)
- Entrusted with the Crowd Management(Ex - ante Disaster Management) for the Shree Saptashrungi Niwas Devi
Trust,Nashik. The entire project is divided into four phases that includes Planning, Sourcing, Training ,
and Implementation.
- First Planning phase has already finished.


White to play 13
w4-b0/5
pips White=153 Black=99
(CorrectAnswer= 0/0, ErrorScore= 0)
1. Bar/24 13/10 eq: -0.201 42.96% (G: 6.16% B:0.22%) 57.04% (G:28.47% B:3.48%) 2. Bar/24 8/5 eq: -0.232 (-0.031) 41.08% (G: 5.89% B:0.20%) 58.92% (G:26.87% B:2.98%) 3. Bar/24 6/3 eq: -0.236 (-0.035) 41.82% (G: 5.47% B:0.18%) 58.18% (G:32.39% B:4.34%) 4. Bar/24 4/1* eq: -0.538 (-0.336) 28.38% (G: 3.31% B:0.12%) 71.62% (G:43.54% B:6.54%) 5. Bar/24 5/2 eq: -0.561 (-0.360) 27.21% (G: 2.40% B:0.09%) 72.79% (G:43.16% B:6.60%)


Judy & Punch film review: puppet show comes to life
by Lucy RutherfordTHE traditional puppet show of Punch and Judy comes to life in this dark comedy that examines the way violence against women has been and still is used for entertainment.
Recently returned to the mid-17th century town of Seaside, Judy (Mia Wasikowska) and Punch (Damon Herriman) draw in crowds with their famous puppet performance.
Judy knows their success could be greater if only Punch could get off the booze, but his debauched ways lead to tragedy when she asks him to look after their baby daughter while she is out of the house for an hour.
Judy & Punch immerses you in a fantastical bygone era filled with caricatures sporting a variety of ambiguous accents and despite being filmed in Victoria the setting does look like a Monty Python-esque old England.
Aside from drinking in the pub, the main form of amusement in the town is the public stoning of women accused of being witches, with Judy the only person to turn away in discomfort.

Punch is given equal screentime and Herriman makes him highly entertaining and charming, his moments of cruelty all the more jarring as he struggles between remorse and his instinctual desire to be popular and liked.
Perhaps this is the point actor turned first-time director Mirrah Foulkes is making, that even in a film that calls out society’s acceptance of violence against women, as an audience we will all but forgive the perpetrators as long as we find them entertaining enough.
THE ESSENTIALS
Judy & Punch (MA)
Director: Mirrah Foulkes
Starring: Mia Wasikowska, Damon Herriman, Benedict Hardie
Three stars
In cinemas from November 21


Learn Paprika
Paprika lets you write text that varies itself.
Type or copy Hello [animal]
into this box and press enter (a few times if you want):
If you use identical tags more than once, they will be replaced with the same thing (like find+replace).
Try My [animal] is [good trait]. I love my [animal].
If you want to randomise tags more than once, you can label them separately with a hash. Even then, they might randomise the same result!
Try I like [sport#1] and [sport#another]
in the box:
Where do the options come from?
I program them in, in so-called "grammar" files. You can explore the whole grammar but it might be a bit confusing at this point. Also, it's not finished.
Slightly more complicated examples
In the grammar, there is [category]
. You can try it in the box below.
For each category, there is also a list of those things (like "[country]
", and "[colour]
").
This lets us do something like My favourite [category] is [[category]]
(The first find+replace changes the formula to e.g. My favourite country is [country]
But notice that [[category]] is a [category]
doesn't work!
That's because the internal [category] tag hasn't been replaced by the time it gets to the nested brackets.
To fix this, you can render it early using an 'early' or 'hidden' tag.
[!category][[category]] is a [category]
N.b. [a] and [an] are magic. They look at the next letter in the finished sentence and change appropriately,
so you can write [a] [category]
to get "a country" or "an animal".
I call '!' a command. Commands are a special character at the start of a tag.
There are 2 commands; '!' and '?'. The ? tag gives a 50% chance of that tag being rendered empty
He drove a [?colour] car
Forward slashes make the tag pick between literal phrases: Let's go [north/south/east/west/up the hill/down the well]
This can be used like '?' except that where '?' makes a word taken from the grammar optional, slash does it for literals. So [/cat]
can come back as either 'cat' or nothing. [?cat]
would fail, because there is no grammar key for 'cat'.
You can use early calls to make slash-tags more powerful: [!beast][[beast]/bananas]
Paprika is a rapid prototype, and I'm still working on a better way to do some of this stuff!
OK, that's the bones of it. Now you could experiment on the main page, and from there you can navigate the grammar. Use Paprika
Please email me comments and feedback: ste at paprika me uk
. Have fun!


|
“There is no greater network than the Buckeye network,” says new alumni association president and CEO Jim Smith ’91. Smith knows that firsthand: He married a Buckeye, was on staff for several years and turned to the network before multiple career moves.
|


JavaScript is disabled on your browser.
Skip navigation links
Package
Class
Tree
Deprecated
Index
Help
Prev Letter
Next Letter
Frames
No Frames
All Classes
A
B
C
D
E
G
L
M
N
O
P
R
S
T
U
V
A
Add(View)
- Method in class com.example.healthtracker.
AddPatientView
add_Remove_GetList_ProblemTest()
- Method in class com.example.healthtracker.
PatientTest
addCareGiverRecord()
- Method in class com.example.healthtracker.
ProblemTest
addCareProviderComment(View)
- Method in class com.example.healthtracker.
CareProviderProblemView
AddCareProviderCommentView
- Class in
com.example.healthtracker
AddCareProviderCommentView()
- Constructor for class com.example.healthtracker.
AddCareProviderCommentView
addGeoLocation(Bitmap)
- Method in class com.example.healthtracker.
PatientRecord
Add a geoLocation to the record.
addGeoLocation()
- Method in class com.example.healthtracker.
PatientRecordTest
addition_isCorrect()
- Method in class com.example.healthtracker.
ExampleUnitTest
addNewUser()
- Method in class com.example.healthtracker.
CreateAccountActivity
addNotification()
- Method in class com.example.healthtracker.
ProblemTest
AddorEditRecordView
- Class in
com.example.healthtracker
AddorEditRecordView()
- Constructor for class com.example.healthtracker.
AddorEditRecordView
addPatient(Patient)
- Method in class com.example.healthtracker.
CareProvider
add's a patient to the current CareProvider's assigned patient list
AddPatient(View)
- Method in class com.example.healthtracker.
CareProviderHomeView
addPatient_GetPatients()
- Method in class com.example.healthtracker.
CareProviderTest
addPatient_GetPatients()
- Method in class com.example.healthtracker.
CaretakerTest
addPatientProblem(View)
- Method in class com.example.healthtracker.
AddProblemView
addPatientRecord()
- Method in class com.example.healthtracker.
ProblemTest
AddPatientView
- Class in
com.example.healthtracker
AddPatientView()
- Constructor for class com.example.healthtracker.
AddPatientView
addPhoto(Photo)
- Method in class com.example.healthtracker.
PatientRecord
Add a photo to the record.
addPhoto()
- Method in class com.example.healthtracker.
PatientRecordTest
addProblem(Problem)
- Method in class com.example.healthtracker.
Patient
adds a new problem created by the patient to the patient's list of problems
addProblem(View)
- Method in class com.example.healthtracker.
PatientHomeView
AddProblemView
- Class in
com.example.healthtracker
AddProblemView()
- Constructor for class com.example.healthtracker.
AddProblemView
addRecordFromAdd(View)
- Method in class com.example.healthtracker.
AddProblemView
addRecordFromAdd(View)
- Method in class com.example.healthtracker.
EditProblem
addToCareProviderString(String)
- Method in class com.example.healthtracker.
Patient
Add a new careProvider to the patient.
A
B
C
D
E
G
L
M
N
O
P
R
S
T
U
V
Skip navigation links
Package
Class
Tree
Deprecated
Index
Help
Prev Letter
Next Letter
Frames
No Frames
All Classes


There are 2 parts to your quotation:
Let’s start with your On-trip cover.


Run the query, and in the grid view CTRL+A to select all, and CTRL+Shift+C to copy everything including column names, and paste into this text area below


Models were ranked based on differences in AIC corrected for small sample size (ΔAIC c), weights and evidence ratios ( ER). Climate variable abbreviations can be found in the text or S2 Table.
Climate variable significance is indicated by
*( P < 0.05)
** ( P <0.01), and
*** ( P<0.001).


git delta
List files that differ from another branch.
Part of `git-extras`.
More information: home page
- List files from the current checked out branch that differ from the `main` branch:
git delta main
- List files from a specific branch that differ from another specific branch:
git delta branch_1 branch_2


--- layout: post published: true title: "How it feels [through Glass]" permalink: /2013/02/how-it-feels-through-glass/ date: "2013-02-20 16:15:00" ---
Amazing.


{% extends 'news/base.html' %} {% block content %}
Select a time period to see the most mentioned keywords/topics for that period.


--- layout: newsstory title: FIXTURE LIST IS OUT match: ---
The fixture list for the league has now been published, and thanks to Doc's sterling efffort of sending them to the mailing list I've been able to add them to the site .
A few highlights I'll pick out: we start at home to Gresley on August 18; Boxing Day is away to Redditch and the last away game is at Mangotsfield - the rest you can see for yourself on the full list
The Causeway game on Saturday is definitely ON . The ground staff as ever have been putting in the work to ensure everything will be ready for Saturday.Very exciting in a sad sort of way :-)


Build The Community Your Fans Will Love
Huddle re-imagines the way we build communities. You have a voice, but so does your audience. Create connections with your users as you engage in genuine discussion.
1.4k+
Communities Formed
2.7m+
Messages Sent
Grow Together
Generate meaningful discussions with your audience and build a strong, loyal community. Think of the insightful conversations you miss out on with a feedback form.
Flowing Conversations
You wouldn't paginate a conversation in real life, so why do it online? Our threads have just-in-time loading for a more natural flow.
Your Users
It takes no time at all to integrate Huddle with your app's authentication solution. This means, once signed in to your app, your users can start chatting immediately.


Face Detection Demo
Image height (px, divisible by 32)
Image width (px, divisible by 32)
Upload
Set the image height and width to 0 if you don't want to resize the image.
Please wait...


Dori say:
It's only days until my birthday and days until Christmas, so you'd better start shopping now!
And it's only days until our anniversary...


Page settings
PREVIEW
Pick an accent color:
Spotlight image:
Personal Info: Your information is NOT shared outside of your computer. All data is stored locally on your system.
Changes saved
Home


import helper
run(message, bot): This is the main function used to implement the budget delete feature. It takes 2 arguments for processing - message which is the message from the user, and bot which is the telegram bot object from the main code.py function. It gets the user’s chat ID from the message object, and reads all user data through the read_json method from the helper module. It then proceeds to empty the budget data for the particular user based on the user ID provided from the UI. It returns a simple message indicating that this operation has been done to the UI.
def run(message, bot):
chat_id = message.chat.id
user_list = helper.read_json()
print(user_list)
if str(chat_id) in user_list:
user_list[str(chat_id)]['budget']['overall'] = None
user_list[str(chat_id)]['budget']['category'] = None
helper.write_json(user_list)
bot.send_message(chat_id, 'Budget deleted!')


Website for composer - CODING
HTML & CSS Portfolio page for composer
This website - CODING
Made with HTML, CSS and a dash of JavaScript & jQuery
Website for composer
HTML & CSS Portfolio page for composer
Coding
⇢ This website ⇠
Made with HTML, CSS and a dash of JavaScript


Attach the [UsesLayout] attribute on elements that contain exactly one child element to define that child is a layout.
The [UsesLayout()] attribute has the following properties you can set.
This is an example of how use this attribute
[IsRegion("header_bar")] [Container("div", "{ns}_header_bar_region")] [UsesLayout("header_bar")] internal class HeaderBarRegion : NavigationElement { }
Specifies the name of the layout to place within this page element. If the layout is part of the same package then you can just use the layout name on its own. If the layout is in a different package from the element you are attaching this attribute to, then you need to prefix the layout name with the package namespace and a colon.


NeuralNetwork
Class representing a Neural Network
Constructor Summary
| Public Constructor | ||
| public |
constructor(inputNodes: Int, hiddenNodes: Int, outputNodes: Int, learningRate: Int) Create a NeuralNetwork |
Method Summary
| Public Methods | ||
| public |
Returns a copy of the NeuralNetwork |
|
| public |
Evaluate inputs based on the current state of the NeuralNetwork |
|
| public |
Train the NeuralNetwork |
Public Constructors
public constructor(inputNodes: Int, hiddenNodes: Int, outputNodes: Int, learningRate: Int) source
Create a NeuralNetwork
Params:
| Name | Type | Attribute | Description |
| inputNodes | Int | The number of input nodes |
|
| hiddenNodes | Int | The number of hidden nodes |
|
| outputNodes | Int | The number of output nodes |
|
| learningRate | Int | The learning rate for training |
Public Methods
public eval(inputArr: array[number]): object source
Evaluate inputs based on the current state of the NeuralNetwork
Params:
| Name | Type | Attribute | Description |
| inputArr | array[number] | A single dimensional array of number inputs |
Return:
| object | An object containing matricies representing the input, hidden node outputs, and final outputs |
public train(inputArr: array[number], targetArr: array[number]): object source
Train the NeuralNetwork
Params:
| Name | Type | Attribute | Description |
| inputArr | array[number] | A single dimensional array of number inputs |
|
| targetArr | array[number] | A single dimensional array of numbers representing expected outputs |
Return:
| object | An object containing properties representing errors between the Network's output and target outputs and errors in the hidden node layer |


Package org.apache.juneau.http.remote
Annotation Type RemotePost
@Documented
@Target(METHOD)
@Retention(RUNTIME)
@Inherited
@AnnotationGroup(RemoteOp.class)
public @interface RemotePost
Annotation applied to Java methods on REST proxy interface classes.
Note that this annotation is optional if you do not need to override any of the values.
See Also:
-
Optional Element Summary
-
Element Details
-
path
REST service path.If you do not specify a path, then the path is inferred from the Java method name.
Example:
// POST /pet @RemotePost public void postPet(...);Note that you can also use
value()
to specify the path in shortened form.- An absolute URL.
- A relative URL interpreted as relative to the root URL defined on the
RestClient and/orRemote.path()
. - No path.
- Returns:
- The annotation value.
- Default:
- ""
-
returns
The value the remote method returns.-
RemoteReturn.BODY
(default) - The body of the HTTP response converted to a POJO.
The return type on the Java method can be any of the following:-
void - Don't parse any response. Note that the method will still throw an exception if an error HTTP status is returned. -
Any parsable POJO - The body of the response will be converted to the POJO using the parser defined
on the
RestClient . -
Any POJO annotated with the
@Response
annotation. This allows for response beans to be used which also allows for OpenAPI-based parsing and validation. -
HttpResponse - Returns the rawHttpResponse returned by the innerHttpClient . -
Reader
- Returns access to the raw reader of the response. -
InputStream
- Returns access to the raw input stream of the response.
-
-
RemoteReturn.STATUS
- The HTTP status code on the response.
The return type on the Java method can be any of the following:int /Integer - The HTTP response code.boolean /Boolean -true if the response code is<400
- Returns:
- The annotation value.
- Default:
- BODY
-
-
value
REST path.Can be used to provide a shortened form for the
path()
value.The following examples are considered equivalent.
// Normal form @RemotePost (path="/{propertyName}" )// Shortened form @RemotePost ("/{propertyName}" )- Returns:
- The annotation value.
- Default:
- ""
-


Frequently Asked Questions
What is the Compliance Checker?
The IOOS Compliance Checker is a Python-based tool for data providers to check for completeness and community standard compliance of local or remote netCDF files against CF and ACDD file standards. The Python module can be used as a command-line tool or as a library that can be integrated into other software.
You are currently viewing the web-based version of the Compliance Checker. It was developed to enable a broader audience and improve accessibility for the checker. With the web version, providers can simply provide a link or upload their datasets and get the full suite of capabilities that Compliance Checker offers.
What does the Compliance Checker check?
It currently supports the following sources and standards:
Can I test an ERDDAP dataset with the Compliance Checker?
Yes. When testing an ERDDAP dataset, please supply the URL to the dataset without a file extension. For example, to test this
Morro Bay dataset, you should supply the URL like so: "https://standards.sensors.ioos.us/erddap/tabledap/morro-bay-bs1-met".
What version of the Compliance Checker is run on this site?
Is there an API?
There sure is. Check out the details on how to use the web API
here.
Where can I find more information about the Compliance Checker?
The Compliance Checker is completely open-source and available on
Github Refer to the README for details on how to install and use the Compliance Checker.
Disclaimer
The objective of the IOOS Compliance Checker is to check your file against our interpretation of select dataset metadata standards to use as a guideline in generating compliant files. The compliance checker should not be considered the authoritative source on whether your file is 100% "compliant". Instead, we recommend that users use the results as a guide to work towards compliance.


Mel B recalls 'intense but beautiful' long term relationship with a woman
The Spice Girl is the host of a new podcast but opened up to guest Megan Barton-Hanson on what she thinks are the big differences between men and women
by Irishmirror.ieSpice Girl Mel B has opened up about a "beautiful" five year relationship with a woman.
She's the host of new podcast The Truth Flirts, and gave guest, Love Island's Megan Barton-Hanson, a break from the mic by chatting about her own love life.
Megan spoke about how she probably wouldn't date another man and would be sticking with women, prompting Mel- who's previously bragged about her "huge libido and great sex life" - to discuss the differences in dating men and women.
"I do think that dating women is very different to dating men," she told Megan bluntly.
The 44 year old continued: "I had a five year relationship with a woman and it was an intense five years but it was actually a really beautiful five years.
"We barely argued, because we both thought the same, wanted the same out of life. It was really interesting when I actually compare it to my other relationships."
While Mel never names the woman she's talking about, it's possible she could have meant US film producer Christine Crokos - their romance lasted between 2002 and 2006.
She told The Guardian : "I had a girlfriend. So what? I did have a four year relationship with a woman.
"People call me a lesbian, bisexual or heterosexual, but I know who's in my bed."
A year after she ended her relationship with Christine, she married her second husband Stephen Belafonte.
Mel also revealed her attitude to first dates, and how important looks are to her to make a good first impression.
"On that first date," she said, "Looks are everything because it's the first thing that you see."
Scary Spice made waves earlier this year when she claimed she'd bedded Ginger Spice, Geri Halliwell.
The Truth Flirts is launched with dating app Badoo - the place to date honestly. Listen now via iTunes and other podcast providers: http://bit.ly/TheTruthFlirts


What is your long term goal and or career pathway?

- I basically want to spend 2-3 years programming to build my skills and self-confidence.
- FED attracts me the most because I want to be able to see something tangible from my efforts and I am intrinsically motivated by design issues.
- But actually it is my craft I want to develop. So I'd rather work in a good backend team than a FED team with poor craft.
From there I'll decide to either go further up the Tech ladder, or swap over to Team Lead.
I'm pretty scared of it, but longest-term, I'd like to run a small Eng dept, whether that's my own startup or not, I'd like to have some shares in it one way or another.
What skills (non-technical - human skills) would you like to see developed in yourself while at EDA?
#### Emotional Intelligence skills.
- When I'm feeling vulnerable in some way, I get self-critical. This can impact my work, my relationship with colleagues etc.
- I want to develop thinking patterns to recognise and neutralise the self-critic.
- And I'd like a second _nice-to-have_ set of skills like walking into a room and instead of feeling anxious, wish everyone happiness.
#### Time Management skills.
I've had good chats with my facilitator already about these issues.
Tech topics/activities are an infinite well. I want to develop skills to go as deep as I need to and no further.
I love the metaphor of committing meaningful work small-and-often and I want to apply it to how I manage my time.
- Break work down to the smallest meaningful, actionable pieces.
- Do those to get regular sense of satisfaction.
- Commit regularly so I know where I'm up to and don't need to keep state in my head. Plus I can look back and see where I've been so my Remembering self doesn't become too critical.
- With small pieces of work and regular commits, it is easy to share where I got up to with my teammates.
A description of your own strengths and limitations
#### limitationsMy ego. I can be afraid to look bad i.e. asking for help, submitting work I subjectively think is poor.
Overly emotionally invested in work. Sometimes I can't just walk away from a project that isn't done. I can borrow too heavily from my energy/happiness and I'll end up paying for it later with a low mood/tiredness.
#### strengths- I enjoy collaborating and helping others to succeed.
- I'm interested in a wide range of topics in the Bootcamp.
- I have a good eye for visual design
- I'd rather do something small and complete it than the opposite, when working in teams.
- I'm constrained by commitments to family so am disciplined
Based on the above description, a commitment to how you will manage your workload in this programme. This should include - an explanation of how you will manage yourself to work productively and sustainably with other learners, facilitators and industry/community representatives.
To paraphrase; what will I do to make sure I can be the best 'me' at all times?
My instinct is to just go hard during all hours available to me. Get food and sleep where I can like a marching army. But that's not going to work for me or my family and I don't want to establish such self-sacrificing habits. In fact I want to develop work habits that are self-sustaining.
To be my best, I need;
- exercise: 2-3 runs per week, perhaps a gym visit.
- time with family: both to help run the household but also to keep our relationships strong.
- time for myself: make time to do things I enjoy
A commitment as to how and where you will seek help in a timely way.
- Reach out to the team if I'm stuck beyond 30 mins on a problem
- Ask for facilitator's help if I'm still stuck an hour later.
A description of what you expect from the facilitation team
#### Weekly catch ups.These are going well. I'll come with topics to discuss or else just talk stream-of-consciousness. I'd like Facilitator to share aphorisms about what they're seeing of my experience.
If the Facilitator notices I'm not doing well or could be doing better in some area, I'd rather know sooner than later.
Any scheduling information such as block-out times when you are committed to other things. For example, you might have whanau commitments such as school drop-offs. It’s important to plan these in.
TBC


Verify that sensitive data in the cloud is encrypted.
Data at rest requires safe storage practices to address security concerns such as:
When encryption is available at the file, partition, volume, or application-level, you should use it. Some data may not be confidential, but it is simpler to enable encryption for an entire bucket or volume, for example, in order to eliminate the possibility that an intruder could use any data in your cloud.
Backup and replication approaches must also use encryption, or respect the encryption method already in use.
To verify that sensitive data in the cloud is encrypted:
Identify sensitive data. Examine your cloud architecture and services used. Look for customer data, intellectual property, and access credentials.
Classify sensitive data. Review the list of sensitive data and prioritize the classification. Customer data and your business data is important, but the financial impact of losing customer data may be higher than losing a list of employees. Use such comparisons as well as threat level to rank and classify data.
Identify where sensitive data is stored. Find all the places where sensitive data is stored.
Verify that sensitive data is encrypted. Examine each place where sensitive data is stored to make sure that it is encrypted.
To use encryption with your AWS resources, include the following steps as part of your management of sensitive data in the cloud:
Identify sensitive data. Examine your cloud architecture and services used. Look for customer data, intellectual property, and access credentials.
Classify sensitive data. Review the list of sensitive data and prioritize the classification. Customer data and your business data is important, but the financial impact of losing customer data may be higher than losing a list of employees. Use such comparisons as well as threat level to rank and classify data.
Protect data at rest on S3. Use permissions at the bucket or object level in combination with IAM policies. This will secure your S3 resources against unauthorized access, deletion, and disclosure.
Protect data at rest on EBS. Use Elastic Block Store (EBS) encryption on non-boot volumes. For boot volumes you will use an encryption method supported by the operating system (OS). For example, in Windows this might be Encrypted File System (EFS) or BitLocker.
Protect data at rest on RDS. Relational Database Service (RDS) offers platform-level protection for MySQL, Oracle, and MS SQL. You can add more protection at the application layer.
Protect data at rest on Glacier. Your data is always protected by server-side encryption. For an additional layer of security you can also encrypt your data before uploading to Glacier.
Protecting data at rest on DynamoDB. You will need to implement a data encryption layer over the standard service. This can be done at the application layer.
Protecting data at rest on EMR. Elastic MapReduce (EMR) uses Amazon Machine Images (AMI) to create instances, which by default do not encrypt data at rest.


Notebooks
Story: Ddi xerreten and the Lioness
Ddi xerreten and the Lioness
Title
Ddi xerreten and the Lioness
Collection
Summary
The Man of the Early Race, whose head was of stone, the Lioness, and the Children. By /han≠kass’o (L VIII.-25. 8177-8197). A Lioness gathers together many of the people's children because she is an invalid and needs them to work for her. Ddi xerreten (a man of the Early Race who has a stone head) goes to her house and points out to the children the fires of their own people in different ravines, until they have all gone home.When the Lioness arrives at her house she asks Ddi xerreten where her children are and he says that they are not her children. The Lioness hurts her jaw on his stone head and is left sitting angrily at her house.
Comments
1) p.8176v: |han≠kass'o heard this story from his maternal grandmother (≠kammi) and also from his mother (|xabbi-an) when he was older, 2) p.8180v: on poisoning people (using a substance used by farmers to kill jackals), 3) p.8188v: water covered with green moss or weed is undrinkable, 4) p.8192v: the |xam call their language |xam |xam ka ≠kakken ≠kakken, 5) This story is found in Book VIII-25
Contributors
|han≠kass'o (Klein Jantje) (VIII)
Date
21 January 1879 (started)
Categories
Keywords
language (the |xam call their's |xam ka ≠kakken ≠kakken) , children (whose people live in the ravines) , children (who live nicely with and work for the Lioness) , children (return to their own people) , children (liberated by Ddi xerreten) , children (the Lioness loves them) , children (and Ddi xerreten and the Lioness) , Ddi xerreten (and the Lioness) , Ddi xerreten (the Lioness hurts her teeth biting his stone head) , Ddi xerreten (what he says to the children) , Ddi xerreten (and the Lioness) , Ddi xerreten (his head is a stone) , Ddi xerreten (is a person of the Early Race) , Ddi xerreten (liberates and returns the children their homes) , Early Race (or the First Bushmen) , Early Race (Ddi xerreten and the Lioness are people of) , Lioness (Ddi xerreten and) , Lioness (hurts her teeth on Ddi xerreten's stone head) , Lioness (kills gemsbok and collects water using its stomach) , Lioness (takes children who are not hers) , Lioness (collects other people's children) , Lioness (loves the children) , Lioness (is an invalid on account of her chest) , Lioness (needs the children to work for her) , stone (Ddi xerreten's head is one) , stone (Ddi xerreten and the Lioness)
Story Pages
8177-8197


Diet Control Tool
Add Food
Food
Kcal
You consumed
calories eating Fast Food
Github Project
LinkedIn
copyright
©
Volodymyr Yahello


CB4J allows you to monitor batch execution and progress at runtime using JMX. By default, CB4J enables at startup a JMX MBean named io.github.benas.cb4j.jmx.BatchMonitorMBean
exposing the following attributes:
To monitor CB4J's JMX MBean attributes, you can use any standard JMX compliant tool such as VisualVM.
The screenshot below shows an example of monitoring CB4J using VisualVM :
CB4J comes with custom JMX clients that allow you to monitor asynchronously the execution progress in real time.
For the moment, CB4J provides two clients:
To use these clients, you need to start your batch and activate remote JMX monitoring with the following system properties:
-Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
This will allow CB4J custom clients to listen remotely to JMX notifications on the port you specified (9999 in this case).
On the client side, you need to add cb4j-tools
module to your classpath as follows:
<dependency> <groupId>io.github.benas.cb4j</groupId> <artifactId>cb4j-tools</artifactId> <version>${version}</version> </dependency>
to be able to launch clients as described in sections below.
To launch the command line client, run the following command:
java io.github.benas.cb4j.monitor.cli.Launcher localhost 9999
This will launch the command line client to listen to JMX notifications sent by CB4J batch running on localhost on port 9999.
The following screenshot captures the command line client monitoring the batch execution progress in real time:
When the batch execution is finished, the client will be updated with a last notification about the batch end time and duration:
To launch the graphical client, run the following command:
java io.github.benas.cb4j.monitor.gui.GUILauncher localhost 9999
This will launch the graphical client to listen to JMX notifications sent by CB4J batch running on localhost on port 9999.
The following screenshot captures the graphical client monitoring the batch execution progress in real time:
This tutorial is the same as the Hello World tutorial but with higher amount of input data and a slow processor for demonstration purpose.
In this tutorial, we will show how to use CB4J core to send JMX notifications about progress and custom clients to monitor this progress in real time.
The complete source code of this tutorial can be found here.
To launch the core batch with maven, execute the following command in the cb4j/cb4j-tutorials
directory :
mvn package exec:exec -PrunJmxTutorial
This will launch the core batch to process the "persons-jmx.csv" file containing about 10K lines which will take about 1 minute to finish. You should have enough time to launch JMX clients as described in following sections and monitor progress in real time.
To launch the command line monitor with maven, execute the following command in a separate console in the cb4j/cb4j-tutorials
directory:
mvn exec:java -PrunJmxCliClient
The command line monitor will be launched and you will be able to see a real time progress about the core batch.
To launch the graphical monitor with maven, execute the following command in a separate console in the cb4j/cb4j-tutorials
directory:
mvn exec:java -PrunJmxGuiClient
The graphical monitor window will be launched and you will be able to see a real time progress about the core batch.


Summary
The Clear words guideline uses research-based strategies to improve the experience of individuals with cognitive and learning disabilities. Clear words help create more accessible content. Writing and editing with clear words includes the following guidance:
- use common words;
- define uncommon words;
- use simple tense;
- use literal language;
- avoid double negatives;
- avoid nested clauses; and
- use appropriate diacritical marks (such as è, ñ, ç).
Why
- Clear words benefit individuals who live with cognitive and learning disabilities, language impairments, memory impairments, and autism.
- People with language impairments often have a reduced vocabulary and learning new terms is a very slow difficult process. For other groups, such as people living with dementia, learning new terms is not realistic or possible. Using common words that they already know will make the content understandable and usable.
- Simple tense, literal language, and active voice make it clear what needs to be done for individuals who struggle to interpret implicit information.
- Clear words improves everyone's reading success and allows for a broader audience.
Who it helps
There are many types of disabilities that can make it harder to read, including a large range of cognitive and learning disabilities, mental health conditions, aging-related conditions, print disabilities, and cognitive impacts of some chronic or other health conditions. It also helps people who are non-native language speakers.
Not all individuals with cognitive and learning disabilities have the same needs. Difficulties with reading vary by disability but also by individual. It’s important not to make assumptions. Many people with disabilities can understand specialized or complex information, but they may benefit from the same principles of clear words.
Clear words generally help everyone, especially people who may have difficulty reading due to disability. Reading may also be more difficult when tired, distracted, under stress, with low-literacy, when working outside one’s first language (such as with some sign language users), or when vision is impaired.
How
- Write clearly and edit your content.
- Follow principles for plain language.
- Use a professional editor when possible.


Class: Aws::ResilienceHub::Types::PutDraftAppVersionTemplateRequest
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
::Aws::Structure ,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/types.rb |
Overview
Constant Summary
Instance Attribute Summary
-
#app_arn ⇒ String
rw
Amazon Resource Name (ARN) of the Resilience Hub application.
-
#app_template_body ⇒ String
rw
A JSON string that provides information about your application structure.
Instance Method Summary
::Aws::Structure
- Included
| #to_hash | Alias for Structure#to_h. |
Instance Attribute Details
#app_arn ⇒ String
(rw)
Amazon Resource Name (ARN) of the Resilience Hub application. The
format for this ::Aws::ARN
is:
arn:partition
:resiliencehub:region
:account
:app/app-id
. For
more information about ARNs, see Amazon Resource Names (ARNs)
in the AWS General Reference guide.
# File 'gems/aws-sdk-resiliencehub/lib/aws-sdk-resiliencehub/types.rb', line 4505
class PutDraftAppVersionTemplateRequest < Struct.new( :app_arn, :app_template_body) SENSITIVE = [] include Aws::Structure end
#app_template_body ⇒ String
(rw)
A JSON string that provides information about your application
structure. To learn more about the appTemplateBody
template, see
the sample template provided in the Examples section.
The appTemplateBody
JSON string has the following structure:
-
resources
The list of logical resources that must be included in the Resilience Hub application.
Type: Array
Each resources
array item includes the following fields:
logicalResourceId
Logical identifier of the resource.
Type: Object
Each
logicalResourceId
object includes the following fields:identifier
Identifier of the resource.
Type: String
logicalStackName
The name of the CloudFormation stack this resource belongs to.
Type: String
resourceGroupName
The name of the resource group this resource belongs to.
Type: String
terraformSourceName
The name of the Terraform S3 state file this resource belongs to.
Type: String
eksSourceName
Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
This parameter accepts values in "eks-cluster/namespace" format. Type: String
type
The type of resource.
Type: string
name
The name of the resource.
Type: String
additionalInfo
Additional configuration parameters for an Resilience Hub application. If you want to implement
additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account. Key:
"failover-regions"
Value:
"[\{"region":"<REGION>", "accounts":[\{"id":"<ACCOUNT_ID>"\}]\}]"
-
appComponents
-
List of Application Components that this resource belongs to. If an Application Component is not part of the Resilience Hub application, it will be added.
Type: Array
Each appComponents
array item includes the following fields:
name
Name of the Application Component.
Type: String
type
Type of Application Component. For more information about the types of Application Component, see Grouping resources in an AppComponent.
Type: String
resourceNames
The list of included resources that are assigned to the Application Component.
Type: Array of strings
additionalInfo
Additional configuration parameters for an Resilience Hub application. If you want to implement
additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the application configuration parameters.Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one associated account. Key:
"failover-regions"
Value:
"[\{"region":"<REGION>", "accounts":[\{"id":"<ACCOUNT_ID>"\}]\}]"
-
excludedResources
-
The list of logical resource identifiers to be excluded from the application.
Type: Array
Each excludedResources
array item includes the following fields:
logicalResourceIds
Logical identifier of the resource.
Type: Object
You can configure only one of the following fields: logicalStackName
resourceGroupName
terraformSourceName
eksSourceName
Each
logicalResourceIds
object includes the following fields:identifier
Identifier of the resource.
Type: String
logicalStackName
The name of the CloudFormation stack this resource belongs to.
Type: String
resourceGroupName
The name of the resource group this resource belongs to.
Type: String
terraformSourceName
The name of the Terraform S3 state file this resource belongs to.
Type: String
eksSourceName
Name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
This parameter accepts values in "eks-cluster/namespace" format. Type: String
-
version
Resilience Hub application version.
additionalInfo
Additional configuration parameters for an Resilience Hub
application. If you want to implement additionalInfo
through the
Resilience Hub console rather than using an API call, see
Configure the application configuration parameters.
Key: "failover-regions"
Value: "[\{"region":"<REGION>",
"accounts":[\{"id":"<ACCOUNT_ID>"\}]\}]"


What is elephant.io ?
Elephant.io provides a socket.io client fully written in PHP that should be usable everywhere in your project.
It is a light and easy to use library that aims to bring some real-time functionality to a PHP application through socket.io and websockets for actions that could not be done in full javascript, such as:
- backend agregation cron tasks,
- REST full backend APIs
- and more..
Requirements
For elephant.io magic to operate, the following dependencies must be fulfilled :
- Socket.IO 0.8+
- PHP 5.3+
- NodeJS 0.6.5+
Close connection when finished (recommended)
The classic connection. It will allow you to connect to your socket.io instance and then emits something to it.
It will then disconnect at the end of the script. We recommend using this for the time being.
PHP server side:
use ElephantIO\Client as Elephant;
$elephant = new Elephant('http://localhost:8000', 'socket.io', 1, false, true, true);
$elephant->init();
$elephant->send(
ElephantIOClient::TYPE_EVENT,
null,
null,
json_encode(array('name' => 'foo', 'args' => 'bar'))
);
$elephant->close();
echo 'tryin to send `bar` to the event `foo`';
Socket.io server side:
var io = require('socket.io').listen(8000);
io.sockets.on('connection', function (socket) {
console.log('user connected!');
socket.on('foo', function (data) {
console.log('here we are in action event and data is: ' + data);
});
});
Making a persistent connection (not recommended yet)
For a persistent connection, here is an example of how to initiate the connection and emit an Hello World message.
Once the message is sent, the connection will be kept with the socket.io server. It is still not recommended to use this at the time,
as this feature is being at an early stage of development.
require('ElephantIOClient.class.php');
$elephant = new ElephantIOClient('http://localhost:1337');
$elephant->init();
$elephant->send(ElephantIOClient::TYPE_MESSAGE, null, null, 'Hello World!');
$elephant->keepAlive();
Available Methods
init($keepalive = false)
Init will initialize the connection to socket.io
Parameters:
$keepalive - boolean - If true, the init launch keepAlive() at the end of the method
keepAlive()
keepAlive make a persistent connection with socket.io by sending back heartbeats.
read()
Read retrieve the latest incoming data.
send($type, $id = null, $endpoint = null, $message = null)
Send allow you to send message to socket.io.
Parameters:
$type - integer - the message type, you can use constants for more ease. Available constants:
- self::TYPE_DISCONNECT
- self::TYPE_CONNECT
- self::TYPE_HEARTBEAT
- self::TYPE_MESSAGE
- self::TYPE_JSON_MESSAGE
- self::TYPE_EVENT
- self::TYPE_ACK
- self::TYPE_ERROR
- self::TYPE_NOOP
$id - integer - optionnal id used for ack
$endpoint - string - optionnal socket.io endpoint
$message - string - optionnal message to transmit
Example:
$client->init();
$client->send(Client::TYPE_MESSAGE, null, null, ‘Hello World!’);
stdout($type, $message)
Allow you to print messages to stdout when executing in CLI.
Parameters:
$type - string - the type of your message must be one of the following:
debug,
info,
error,
ok
$message - string - the message to print
Example:
$client->stdout(‘debug’, ‘connected!’);
Future Features :
- More user-friendly methods to communicate with socket.io
- Better callback management
More to come... Feel free to submit your features requests on our Github issues page !


EPR ("effectively propositional") is a fragment of first-order logic restricted to relational first-order formulas (i.e., formulas over a vocabulary that contains constant symbols and relation symbols but no function symbols) with a quantifier prefix ∃∗∀∗
in prenex normal form.
Satisfiability of EPR formulas is decidable. It is NEXPTIME-complete but in practice SMT solvers can decide many practical instances in a reasonable amount of time.
Moreover, formulas in this fragment enjoy the finite model property, meaning that a satisfiable formula is guaranteed to have a finite model. The size of this model is bounded by the total number of existential quantifiers and constants in the formula. The reason for this is that given an ∃∗∀∗
-formula, we can obtain an equi-satisfiable quantifier-free formula by skolemization, i.e., replacing the existentially quantified variables by constants, and then instantiating the universal quantifiers for all constants.
See also the wikipedia page.
Example
Suppose we take the axioms of a partial order as assumptions:
forall X,Y,Z. X < Y & Y < Z -> X < Z
forall X,Y. ~(X < Y & Y < Z)
Notice these are in EPR. The VC for the following program is also in EPR:
require forall X,Y. r(X,Y) -> X > Y;
if r(x,y) & r(y,z) {
r(x,z) := true
};
ensure forall X,Y. r(X,Y) -> X > Y;
To see this, let’s expand it out to the conjunction of the following formulas in prenex normal form:
forall X,Y. r(X,Y) -> X > Y
r(x,y) & r(y,z) -> (r'(x,z) & forall X,Y. X ~= x | Y ~= y | r'(X,Y) = r(X,Y))
~(r(x,y) & r(y,z)) -> r'(X,Y) = r(X,Y))
exists X,Y. ~(r'(X,Y) -> X > Y)
The first of these formulas says that the precondition holds.
The second says that if we take the “if
” branch, then r
is updated so that r(x,z)
holds and otherwise it remains unchanged.
The third says that if we take the “else
” branch, r
is unchanged.
The last says that, finally, the guarantee is false
.
Notice that a fresh symbol r’
was introduced. Technically, this symbol was introduced to allow us to move a universal quantifier on r
to prenex position without "capturing" other occurrences of r
. However, we can think of it as just the “next” value of r
, after the assignment (that is: treating the program as a transition relation between r
and r'
)
We can see that the precondition and the constraint defining the semantics of assignment both occur positively. These formulas are in EPR, and so the corresponding conjuncts of the negated VC also are.
The guarantee formula occurs negatively as exists X,Y. ~(r'(X,Y) -> X > Y)
. That is, when we see ~forall X. p(X)
, we convert it to the equivalent exists X. ~p(X)
in prenex form. This formula is also in EPR. In fact, Ivy will convert it to ~(r'(a,b) -> a > b)
, where a
and b
are fresh constant symbols.
In general, if we don’t use function symbols, and if all of our assumptions and guarantees are forall
formulas (so-called "A"-formulas), then the negated VC will be in EPR.


Frequently Asked Questions: How to use MapmyIndia Developer Console?
Q1. Difference b/w Projects Reports & Account Reports Section?
Ans: Reports under Projects Section shows us the Report (commonly known as Timeline Report) of that Particular Project & Reports under Account Reports Section shows us the Report of the whole account as the account may have more than one project.
Q2. What is a Latency Report?
Ans: This is the report which shows the average response time for the various APIs you have used in the said duration. This is the part of the performance report.
Q3. What is a Status Code Report?
Ans: This is the report which shows the status codes of the APIs you have used corresponding to the Request count of the APIs. This is the part of the performance report.
Q4. What are the types of status code we have?
Ans:
| Status Code | Meaning |
|---|---|
| 200 | success |
| 204 | no matching result |
| 400 | bad request |
| 401 | unauthorised; access denied |
| 403 | services for this key has been suspended due to hourly/daily transaction limit |
| 500 | something went wrong; internal server error |
| 503 | services unavailable; maintenance break |
| 412 | precondition failed; expected combination not provided |
| 499 | client redacted request in middle of processing |
| 409 | conflict; unexpected state |
| 417 | expectation failed |
| 404 | resource not found |
| 504 | gateway timeout |
| 301 | moved permanently; redirection; mostly used in http calls |
| 304 | not modified; similar in all terms & purposes to 200 |
| 408 | request timeout |
| 502 | Bad gateway |
Q5. What does API Groups Means?
Ans: We have distributed our APIs in Groups just like as mentioned below:
| API Groups | API Name |
|---|---|
| Directions | Route Adv API w/o traffic, Route eta API w/ traffic, Route traffic API w/ traffic, Distance Matrix API w/o traffic, Distance Matrix ETA API w/ traffic, Distance Matrix Traffic API w/ traffic, Route Optimization API, Snap to road API, POI Along the route |
| Search | Autosuggest, Text Search, Reverse Geocode, Geocoding, Nearby, eLOC API, Address Standardization API |
| Maps | Raster SDK, Vector SDK |
| GeoAnalytics | State, District, SubDistrict, Pincode, Locality, SubLocality, SubSubLocaity, Road |
Q6. Can I monitor project wise utilization?
Ans: Yes, you can monitor project wise utilization by using the project name filter.
Q7. What is the difference between Used Hits and Request Count in a downloaded report?
Ans: Used Hits are the hits which are based on the transaction strategy of the particular API whereas Request Count are the counts that how many times a particular API has been hit through the server. For example: The transaction strategy of our Directions APIs are basically based on how many coordinates you are passing through the request.
Q8. If I need multiple sets of keys for different Projects, how can I do so?
Ans: Currently, You have a single set of keys against a project whereas you can have multiple projects in your account. For doing so you have to place the request to the MapmyIndia API support team at<EMAIL_ADDRESS>This feature is available; but each user is requested to take demonstration from MapmyIndia API support prior to attempting to create credentials on your own, as it may lead to unforeseen consequences.
Q9. Where should I contact your team for any help?
Ans: You can always feel free to contact MapmyIndia API Support Team at<EMAIL_ADDRESS>we are always available here to serve you better.
Q10. How can I add multiple Projects in my Dashboard?
Ans: Currently, You have to place the request to the MapmyIndia API support team at<EMAIL_ADDRESS>Q11. Where do I go for APIs & SDKs Documentation?
Ans: All the documentation of our APIs & SDKs are available on our official website www.mapmyindia.com/api & at our Github Repository available here at www.github.com/mapmyindia.
Q12. What is IP/Domain Whitelisting/Blacklisting?
Ans: This feature lets you whitelist or blacklist the particular IP/Domain in our project, so that the credentials are binded to allowed IPs/Domains.
Q13. How to reset Password?
Ans: If you forget your password, you can reset it by visiting the following URL: https://anchor.mapmyindia.com/app/#/forgotPassword
Q14. What are the types of billing?
Ans: Following are the types of billing as mentioned below:
Q15. What is Project Type?
Ans: It shows that the project falls in which category like free, enterprise, projects, etc.
Team MapmyIndia
For any queries and support, please contact:
Email us at apisupport@mapmyindia.com


Home
Technical Sprints
Technical2
Technical3
Technical4
Technical5
ABOUT ME
Welcome to Tom's Blog
This blog will contain information about my academic progression.
Git
HTML
CSS
My Learning Plan
Neuroplasticity and Growth Mindset Blog
Emotional Intelligence