<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to OSC_Spec</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>Recent changes to OSC_Spec</description><atom:link href="https://sourceforge.net/p/openantz/wiki/OSC_Spec/feed" rel="self"/><language>en</language><lastBuildDate>Sun, 25 May 2014 06:37:24 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/openantz/wiki/OSC_Spec/feed" rel="self" type="application/rss+xml"/><item><title>OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v9
+++ v10
@@ -22,9 +22,15 @@
 ----
 Additional References:

+READ THIS FIRST: [Everything-About-OSC.mov - DOWNLOAD](http://opensoundcontrol.org/files/Everything-About-OSC.mov)
+
+Setting up bi-directional OSC between TouchOSC and Pure Data:
+http://hexler.net/docs/touchosc-getting-started
+
+Adhoc networks for Mac &amp; PC:
+http://hexler.net/docs/touchosc-appendix
+
 Examples of different OSC Address schemas at [OSC_3rd_Party]
-
-READ THIS FIRST: [Everything-About-OSC.mov - DOWNLOAD](http://opensoundcontrol.org/files/Everything-About-OSC.mov)

 http://opensoundcontrol.org/publication/everything-you-ever-wanted-know-about-open-sound-control

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Sun, 25 May 2014 06:37:24 -0000</pubDate><guid>https://sourceforge.net612260912ef349ad5279578bbbeac8bf2d8b94a6</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v8
+++ v9
@@ -1,8 +1,8 @@
-[Home] - [Developer_Guide] - [Network_API] - [OSC_Spec] hosted at [openANTz.com](http://openantz.com/)
+[Home] - [Developer_Guide] - [Network_API] - [OSC_API] - [OSC_Spec] - hosted at [openANTz.com](http://openantz.com/)

-also see:  [OSC_API] - [OSC_Schema] - [JSON_OSC_Bridge]
+also see: [OSC_Schema] - [OSC_3rd_Party] - [JSON_OSC_Bridge] - [MySQL_API] - [File_Types]

-updated 2012-02-08
+updated 2012-02-20

 OSC docs and code are currently in progress, this is a DRAFT!!!
 ----
@@ -21,6 +21,8 @@

 ----
 Additional References:
+
+Examples of different OSC Address schemas at [OSC_3rd_Party]

 READ THIS FIRST: [Everything-About-OSC.mov - DOWNLOAD](http://opensoundcontrol.org/files/Everything-About-OSC.mov)

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Wed, 20 Feb 2013 21:00:52 -0000</pubDate><guid>https://sourceforge.net6ad2ade94898f5277241755eb8b9f0cb35f0c50f</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v7
+++ v8
@@ -1,10 +1,13 @@
 [Home] - [Developer_Guide] - [Network_API] - [OSC_Spec] hosted at [openANTz.com](http://openantz.com/)

-also see:  [OSC_API] - [OSC_Schema] - updated 2012-01-31
+also see:  [OSC_API] - [OSC_Schema] - [JSON_OSC_Bridge]
+
+updated 2012-02-08

 OSC docs and code are currently in progress, this is a DRAFT!!!
 ----
-OSC Specification
+----
+OSC Specification References:

 Our [OSC_Schema] is based on these 3 documents:

@@ -17,7 +20,7 @@
 [Towards Standardization of Queries](http://opensoundcontrol.org/towards-standardization-queries-osc) - Outlines basic criteria for a query system and that a STANDARD IS NEEDED.

 ----
-References:
+Additional References:

 READ THIS FIRST: [Everything-About-OSC.mov - DOWNLOAD](http://opensoundcontrol.org/files/Everything-About-OSC.mov)

@@ -32,20 +35,7 @@
 Setting up bi-directional OSC between TouchOSC and Pure Data:
 http://hexler.net/docs/touchosc-getting-started

-----
-Excerpts from [OSC 1.1 Spec](http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime):
-
-OSC 1.1 Base Data Types - (required as of OSC 1.1)
-
-i - Integer: two’s complement int32
-f - Float: IEEE float32
-s - NULL-terminated ASCII string
-b - Blob, (aka byte array) with size
-T - True: No bytes are allocated in the argument data.
-F - False: No bytes are allocated in the argument data.
-N - Null: (aka nil, None, etc). No bytes are allocated in the argument data.
-I - Impulse: (aka “bang”), used for event triggers. No bytes are allocated in the argument data.
-t - Timetag: an OSC timetag in NTP format, encoded in the data section
+See [JSON_OSC_Bridge] for additional references on JSON and OSC.

 ----
 Excerpts from [OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf):
@@ -70,9 +60,8 @@
 → /patch1/gain1/#current-value
 ← #reply (sf) ’/patch1/gain1/#current-value’, 100.0

-
 ----
-Edited Excerpts from OSC 1.0 Spec with added Comments
+Edited Excerpts from [OSC 1.0 Spec](http://opensoundcontrol.org/spec-1_0) and [OSC 1.1 Spec](http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime) - with added Comments

 The Open Sound Control 1.0 Specification
 Version 1.0, March 26 2002, Matt Wright
@@ -87,43 +76,28 @@

 OSC Bundle - starts with "#bundle" followed by a Time Tag, followed by zero or moreBundle Elements.

-OSC Message- Has an OSC Address Pattern followed by an OSC Type Tag String followed by zero or more OSC Arguments.
+OSC Message - has an OSC Address Pattern followed by an OSC Type Tag String followed by zero or more OSC Arguments.

-OSC Address Pattern - starts with a '/' and is similar to a linux (device) file path, ex: '/mix/input/1/gain'
+OSC Address Space Pattern - starts with a '/' and is similar to a URL path, ex: '/mix/input/1/gain'

-OSC Type Tag String - specifies the OSC Arguments in the given message, ex '/mix/send/1/mute ,i 1'
+OSC Type Tag String - each character after the comma specifies the OSC Arguments types, ex: '/mix/input/1/mute ,i'

-OSC Arguments
-A sequence of OSC Arguments is represented by a contiguous sequence of the binary representations of each argument.
+OSC Arguments - are the actual data such as the gain value '22', ex: '/mix/input/1/gain ,i 22

-Each character after the comma is called an OSC Type Tag and represents the type of the corresponding OSC Argument.
+----
+OSC 1.1 Base Data Types - (required as of OSC 1.1)

-OSC 1.0 Base Type Tags
-i - int32
-f - float32
-s - OSC-string
-b - OSC-blob
+i - Integer: two’s complement int32
+f - Float: IEEE float32
+s - NULL-terminated ASCII string
+b - Blob, (aka byte array) with size
+T - True: No bytes are allocated in the argument data.
+F - False: No bytes are allocated in the argument data.
+N - Null: (aka nil, None, etc). No bytes are allocated in the argument data.
+I - Impulse: (aka “bang”), used for event triggers. No bytes are allocated in the argument data.
+t - Timetag: an OSC timetag in NTP format, encoded in the data section

-- Nonstandard Argument Types - SOME made STANDARD with OSC 1.1 Spec!!!
-
-OSC applications are not required to recognize these types... they are optional:
-
-h - 64 bit big-endian two's complement integer
-t - OSC-timetag
-d - 64 bit ("double") IEEE 754 floating point number
-S - Alternate type represented as an OSC-string (for example, for systems that differentiate "symbols" from "strings")
-c - an ascii character, sent as 32 bits
-r - 32 bit RGBA color
-m - 4 byte MIDI message. Bytes from MSB to LSB are: port id, status byte, data1, data2
-T - True. No bytes are allocated in the argument data.
-F - False. No bytes are allocated in the argument data.
-N - Nil. No bytes are allocated in the argument data.
-I - Infinitum. No bytes are allocated in the argument data.
-\[ - Indicates the beginning of an array. The tags following are for data in the Array until a close brace tag is reached.
-] - Indicates the end of an array.
-OSC Type Tag String examples.
-
-
+----
 Atomic Data Types

 The size of every atomic data type in OSC is a multiple of 32-bits (4-byte aligned.)
@@ -141,22 +115,8 @@
 This table shows the parts of a two-or-more-element OSC Bundle and the size (in 8-bit bytes) of each part.

 ----
+OSC Semantics

-BELOW NEEDS FURTHER EDITING...
-----
-
-----
-
-Parts of an OSC Bundle
-Data   Size    Purpose
-OSC-string "#bundle"   8 bytes How to know that this data is a bundle
-OSC-timetag    8 bytes Time tag that applies to the entire bundle
-Size of first bundle element   int32 = 4 bytes First bundle element
-First bundle element's contents    As many bytes as given by "size of first bundle element"
-Size of second bundle element  int32 = 4 bytes Second bundle element
-Second bundle element's contents   As many bytes as given by "size of second bundle element"
-etc.       Addtional bundle elements
-OSC Semantics
 This section defines the semantics of OSC data.

 OSC Address Spaces and OSC Addresses
@@ -166,42 +126,37 @@

 Each OSC Method and each OSC Container other than the root of the tree has a symbolic name, an ASCII string consiting of printable characters other than the following:

-Printable ASCII characters not allowed in names of OSC Methods or OSC Containers
-character  name    ASCII code (decimal)
-' '     space  32
-#  number sign 35
-*  asterisk    42
-,  comma   44
-/  forward slash   47
-?  question mark   63
-[  open bracket    91
-]  close bracket   93
-{  open curly brace    123
-}  close curly brace   125
+Printable ASCII characters not allowed in names of OSC Methods or OSC Containers:
+character - name - ASCII code (decimal)
+' ' - space - 32
+\# - number sign - 35
+\* - asterisk - 42
+, - comma - 44
+/ - forward slash - 47
+? - question mark - 63
+\[ - open bracket - 91
+] - close bracket - 93
+{ - open curly brace - 123
+} - close curly brace - 125
+
 The OSC Address of an OSC Method is a symbolic name giving the full path to the OSC Method in the OSC Address Space, starting from the root of the tree. An OSC Method's OSC Address begins with the character '/' (forward slash), followed by the names of all the containers, in order, along the path from the root of the tree to the OSC Method, separated by forward slash characters, followed by the name of the OSC Method. The syntax of OSC Addresses was chosen to match the syntax of URLs. (OSC Address Examples)

+----
 OSC Message Dispatching and Pattern Matching
-When an OSC server receives an OSC Message, it must invoke the appropriate OSC Methods in its OSC Address Space based on the OSC Message's OSC Address Pattern. This process is called dispatching the OSC Message to the OSC Methods that match its OSC Address Pattern. All the matching OSC Methods are invoked with the same argument data, namely, the OSC Arguments in the OSC Message.

-The parts of an OSC Address or an OSC Address Pattern are the substrings between adjacent pairs of forward slash characters and the substring after the last forward slash character. (examples)
+When an OSC server receives an OSC Message, it must invoke the appropriate OSC Methods in its OSC Address Space based on the OSC Message's OSC Address Pattern. This process is called dispatching the OSC Message to the OSC Methods that match its OSC Address Pattern. All the matching OSC Methods are invoked with the same argument data, namely, the OSC Arguments in the OSC Message...

-A received OSC Message must be disptched to every OSC method in the current OSC Address Space whose OSC Address matches the OSC Message's OSC Address Pattern. An OSC Address Pattern matches an OSC Address if
-
-The OSC Address and the OSC Address Pattern contain the same number of parts; and
-Each part of the OSC Address Pattern matches the corresponding part of the OSC Address.
-A part of an OSC Address Pattern matches a part of an OSC Address if every consecutive character in the OSC Address Pattern matches the next consecutive substring of the OSC Address and every character in the OSC Address is matched by something in the OSC Address Pattern. These are the matching rules for characters in the OSC Address Pattern:
+A received OSC Message must be disptched to every OSC method in the current OSC Address Space whose OSC Address matches the OSC Message's OSC Address Pattern. An OSC Address Pattern matches an OSC Address if...

 '?' in the OSC Address Pattern matches any single character
 '*' in the OSC Address Pattern matches any sequence of zero or more characters
-A string of characters in square brackets (e.g., "[string]") in the OSC Address Pattern matches any character in the string. Inside square brackets, the minus sign (-) and exclamation point (!) have special meanings:
-two characters separated by a minus sign indicate the range of characters between the given two in ASCII collating sequence. (A minus sign at the end of the string has no special meaning.)
-An exclamation point at the beginning of a bracketed string negates the sense of the list, meaning that the list matches any character not in the list. (An exclamation point anywhere besides the first character after the open bracket has no special meaning.)
-A comma-separated list of strings enclosed in curly braces (e.g., "{foo,bar}") in the OSC Address Pattern matches any of the strings in the list.
-Any other character in an OSC Address Pattern can match only the same character.
+
+A string of characters in square brackets (e.g., "\[string]") in the OSC Address Pattern matches any character in the string. Inside square brackets, the minus sign (-) and exclamation point (!) have special meanings...
+
+----
 Temporal Semantics and OSC Time Tags
+
 An OSC server must have access to a representation of the correct current absolute time. OSC does not provide any mechanism for clock synchronization.
-
-When a received OSC Packet contains only a single OSC Message, the OSC Server should invoke the correponding OSC Methods immediately, i.e., as soon as possible after receipt of the packet. Otherwise a received OSC Packet contains an OSC Bundle, in which case the OSC Bundle's OSC Time Tag determines when the OSC Bundle's OSC Messages' corresponding OSC Methods should be invoked. If the time represented by the OSC Time Tag is before or equal to the current time, the OSC Server should invoke the methods immediately (unless the user has configured the OSC Server to discard messages that arrive too late). Otherwise the OSC Time Tag represents a time in the future, and the OSC server must store the OSC Bundle until the specified time and then invoke the appropriate OSC Methods.

 Time tags are represented by a 64 bit fixed point number. The first 32 bits specify the number of seconds since midnight on January 1, 1900, and the last 32 bits specify fractional parts of a second to a precision of about 200 picoseconds. This is the representation used by Internet NTP timestamps.The time tag value consisting of 63 zero bits followed by a one in the least signifigant bit is a special case meaning "immediately."

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Sat, 09 Feb 2013 01:10:10 -0000</pubDate><guid>https://sourceforge.net33163583f411dc27f77b7ae2b8ffa5eb4abd12dd</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v6
+++ v7
@@ -69,3 +69,144 @@
 → /patch1/gain1 100.0
 → /patch1/gain1/#current-value
 ← #reply (sf) ’/patch1/gain1/#current-value’, 100.0
+
+
+----
+Edited Excerpts from OSC 1.0 Spec with added Comments
+
+The Open Sound Control 1.0 Specification
+Version 1.0, March 26 2002, Matt Wright
+
+Intro
+OSC is a transport-independent message protocol for networking multimedia devices.
+
+- An OSC Client sends OSC Packets to an OSC Server.
+- Our [OSC_Schema] typically uses an OSC Bundle in order to provide a Time Tag.
+
+OSC Packet must be either an OSC Message or OSC Bundle. The first byte distinguishes the two alternatives.
+
+OSC Bundle - starts with "#bundle" followed by a Time Tag, followed by zero or moreBundle Elements.
+
+OSC Message- Has an OSC Address Pattern followed by an OSC Type Tag String followed by zero or more OSC Arguments.
+
+OSC Address Pattern - starts with a '/' and is similar to a linux (device) file path, ex: '/mix/input/1/gain'
+
+OSC Type Tag String - specifies the OSC Arguments in the given message, ex '/mix/send/1/mute ,i 1'
+
+OSC Arguments
+A sequence of OSC Arguments is represented by a contiguous sequence of the binary representations of each argument.
+
+Each character after the comma is called an OSC Type Tag and represents the type of the corresponding OSC Argument.
+
+OSC 1.0 Base Type Tags
+i - int32
+f - float32
+s - OSC-string
+b - OSC-blob
+
+- Nonstandard Argument Types - SOME made STANDARD with OSC 1.1 Spec!!!
+
+OSC applications are not required to recognize these types... they are optional:
+
+h - 64 bit big-endian two's complement integer
+t - OSC-timetag
+d - 64 bit ("double") IEEE 754 floating point number
+S - Alternate type represented as an OSC-string (for example, for systems that differentiate "symbols" from "strings")
+c - an ascii character, sent as 32 bits
+r - 32 bit RGBA color
+m - 4 byte MIDI message. Bytes from MSB to LSB are: port id, status byte, data1, data2
+T - True. No bytes are allocated in the argument data.
+F - False. No bytes are allocated in the argument data.
+N - Nil. No bytes are allocated in the argument data.
+I - Infinitum. No bytes are allocated in the argument data.
+\[ - Indicates the beginning of an array. The tags following are for data in the Array until a close brace tag is reached.
+] - Indicates the end of an array.
+OSC Type Tag String examples.
+
+
+Atomic Data Types
+
+The size of every atomic data type in OSC is a multiple of 32-bits (4-byte aligned.)
+
+The underlying network that delivers an OSC packet is responsible for delivering both the contents and the size to the OSC application. An OSC packet can be naturally represented by a datagram by a network protocol such as UDP. In a stream-based protocol such as TCP, the stream should begin with an int32 giving the size of the first packet, followed by the contents of the first packet, followed by the size of the second packet, etc.
+
+
+OSC Bundles
+An OSC Bundle consists of the OSC-string "#bundle" followed by an OSC Time Tag, followed by zero or more OSC Bundle Elements. The OSC-timetag is a 64-bit fixed point time tag whose semantics are described below.
+
+An OSC Bundle Element consists of its size and its contents. The size is an int32 representing the number of 8-bit bytes in the contents, and will always be a multiple of 4. The contents are either an OSC Message or an OSC Bundle.
+
+Note this recursive definition: bundle may contain bundles.
+
+This table shows the parts of a two-or-more-element OSC Bundle and the size (in 8-bit bytes) of each part.
+
+----
+
+BELOW NEEDS FURTHER EDITING...
+----
+
+----
+
+Parts of an OSC Bundle
+Data   Size    Purpose
+OSC-string "#bundle"   8 bytes How to know that this data is a bundle
+OSC-timetag    8 bytes Time tag that applies to the entire bundle
+Size of first bundle element   int32 = 4 bytes First bundle element
+First bundle element's contents    As many bytes as given by "size of first bundle element"
+Size of second bundle element  int32 = 4 bytes Second bundle element
+Second bundle element's contents   As many bytes as given by "size of second bundle element"
+etc.       Addtional bundle elements
+OSC Semantics
+This section defines the semantics of OSC data.
+
+OSC Address Spaces and OSC Addresses
+Every OSC server has a set of OSC Methods. OSC Methods are the potential destinations of OSC messages received by the OSC server and correspond to each of the points of control that the application makes available. "Invoking" an OSC method is analogous to a procedure call; it means supplying the method with arguments and causing the method's effect to take place.
+
+An OSC Server's OSC Methods are arranged in a tree strcuture called an OSC Address Space. The leaves of this tree are the OSC Methods and the branch nodes are called OSC Containers. An OSC Server's OSC Address Space can be dynamic; that is, its contents and shape can change over time.
+
+Each OSC Method and each OSC Container other than the root of the tree has a symbolic name, an ASCII string consiting of printable characters other than the following:
+
+Printable ASCII characters not allowed in names of OSC Methods or OSC Containers
+character  name    ASCII code (decimal)
+' '     space  32
+#  number sign 35
+*  asterisk    42
+,  comma   44
+/  forward slash   47
+?  question mark   63
+[  open bracket    91
+]  close bracket   93
+{  open curly brace    123
+}  close curly brace   125
+The OSC Address of an OSC Method is a symbolic name giving the full path to the OSC Method in the OSC Address Space, starting from the root of the tree. An OSC Method's OSC Address begins with the character '/' (forward slash), followed by the names of all the containers, in order, along the path from the root of the tree to the OSC Method, separated by forward slash characters, followed by the name of the OSC Method. The syntax of OSC Addresses was chosen to match the syntax of URLs. (OSC Address Examples)
+
+OSC Message Dispatching and Pattern Matching
+When an OSC server receives an OSC Message, it must invoke the appropriate OSC Methods in its OSC Address Space based on the OSC Message's OSC Address Pattern. This process is called dispatching the OSC Message to the OSC Methods that match its OSC Address Pattern. All the matching OSC Methods are invoked with the same argument data, namely, the OSC Arguments in the OSC Message.
+
+The parts of an OSC Address or an OSC Address Pattern are the substrings between adjacent pairs of forward slash characters and the substring after the last forward slash character. (examples)
+
+A received OSC Message must be disptched to every OSC method in the current OSC Address Space whose OSC Address matches the OSC Message's OSC Address Pattern. An OSC Address Pattern matches an OSC Address if
+
+The OSC Address and the OSC Address Pattern contain the same number of parts; and
+Each part of the OSC Address Pattern matches the corresponding part of the OSC Address.
+A part of an OSC Address Pattern matches a part of an OSC Address if every consecutive character in the OSC Address Pattern matches the next consecutive substring of the OSC Address and every character in the OSC Address is matched by something in the OSC Address Pattern. These are the matching rules for characters in the OSC Address Pattern:
+
+'?' in the OSC Address Pattern matches any single character
+'*' in the OSC Address Pattern matches any sequence of zero or more characters
+A string of characters in square brackets (e.g., "[string]") in the OSC Address Pattern matches any character in the string. Inside square brackets, the minus sign (-) and exclamation point (!) have special meanings:
+two characters separated by a minus sign indicate the range of characters between the given two in ASCII collating sequence. (A minus sign at the end of the string has no special meaning.)
+An exclamation point at the beginning of a bracketed string negates the sense of the list, meaning that the list matches any character not in the list. (An exclamation point anywhere besides the first character after the open bracket has no special meaning.)
+A comma-separated list of strings enclosed in curly braces (e.g., "{foo,bar}") in the OSC Address Pattern matches any of the strings in the list.
+Any other character in an OSC Address Pattern can match only the same character.
+Temporal Semantics and OSC Time Tags
+An OSC server must have access to a representation of the correct current absolute time. OSC does not provide any mechanism for clock synchronization.
+
+When a received OSC Packet contains only a single OSC Message, the OSC Server should invoke the correponding OSC Methods immediately, i.e., as soon as possible after receipt of the packet. Otherwise a received OSC Packet contains an OSC Bundle, in which case the OSC Bundle's OSC Time Tag determines when the OSC Bundle's OSC Messages' corresponding OSC Methods should be invoked. If the time represented by the OSC Time Tag is before or equal to the current time, the OSC Server should invoke the methods immediately (unless the user has configured the OSC Server to discard messages that arrive too late). Otherwise the OSC Time Tag represents a time in the future, and the OSC server must store the OSC Bundle until the specified time and then invoke the appropriate OSC Methods.
+
+Time tags are represented by a 64 bit fixed point number. The first 32 bits specify the number of seconds since midnight on January 1, 1900, and the last 32 bits specify fractional parts of a second to a precision of about 200 picoseconds. This is the representation used by Internet NTP timestamps.The time tag value consisting of 63 zero bits followed by a one in the least signifigant bit is a special case meaning "immediately."
+
+OSC Messages in the same OSC Bundle are atomic; their corresponding OSC Methods should be invoked in immediate succession as if no other processing took place between the OSC Method invocations.
+
+When an OSC Address Pattern is dispatched to multiple OSC Methods, the order in which the matching OSC Methods are invoked is unspecified. When an OSC Bundle contains multiple OSC Messages, the sets of OSC Methods corresponding to the OSC Messages must be invoked in the same order as the OSC Messages appear in the packet. (example)
+
+When bundles contain other bundles, the OSC Time Tag of the enclosed bundle must be greater than or equal to the OSC Time Tag of the enclosing bundle. The atomicity requirement for OSC Messages in the same OSC Bundle does not apply to OSC Bundles within an OSC Bundle.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Tue, 05 Feb 2013 07:49:13 -0000</pubDate><guid>https://sourceforge.net6e26d80e18ab4d06f5b1e9e0391b8faed8b9de8e</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v5
+++ v6
@@ -8,21 +8,24 @@

 Our [OSC_Schema] is based on these 3 documents:

-[DOWNLOAD OSC 1.1 Spec Addendum](http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime) - Official update by CNMAT at Berkeley
-
 [OSC 1.0 Spec](http://opensoundcontrol.org/spec-1_0) - Use this with the OSC 1.1 Spec.

-[OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Allows remote discovery of our OSC schema.
+[OSC 1.1 Spec](http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime) -  Official addendum to OSC 1.0 by CNMAT at Berkeley
+
+[OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Enables remote discovery of our OSC schema and ability to request values.
+
+[Towards Standardization of Queries](http://opensoundcontrol.org/towards-standardization-queries-osc) - Outlines basic criteria for a query system and that a STANDARD IS NEEDED.

 ----
-OSC References:
+References:

-READ THIS FIRST - Download: [Everything-About-OSC.mov](http://opensoundcontrol.org/files/Everything-About-OSC.mov)
+READ THIS FIRST: [Everything-About-OSC.mov - DOWNLOAD](http://opensoundcontrol.org/files/Everything-About-OSC.mov)
+
 http://opensoundcontrol.org/publication/everything-you-ever-wanted-know-about-open-sound-control

+http://opensoundcontrol.org/publications
+
 http://opensoundcontrol.org/files/osc-best-practices-final.pdf
-
-http://www.opensoundcontrol.org

 http://opensoundcontrol.org/osc-schemas-standardized-osc-address-spaces-plus-their-semantics

@@ -30,9 +33,8 @@
 http://hexler.net/docs/touchosc-getting-started

 ----
-Excerpts from various sources listed above:
+Excerpts from [OSC 1.1 Spec](http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime):

-----
 OSC 1.1 Base Data Types - (required as of OSC 1.1)

 i - Integer: two’s complement int32
@@ -46,7 +48,7 @@
 t - Timetag: an OSC timetag in NTP format, encoded in the data section

 ----
-[OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Allows remote discovery of our [OSC_Schema].
+Excerpts from [OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf):

 4.3.4 Handling Pattern Expansion
 Use of address-pattern expressions with a query prompt is equivalent to sending the prompt to every complete matching address. The server’s response should be as if this were the case.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Fri, 01 Feb 2013 09:28:20 -0000</pubDate><guid>https://sourceforge.netbc6e2536198a099d4bba3d92e7f13a19148d9c20</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v4
+++ v5
@@ -54,9 +54,16 @@
 → /*/#documentation
 ← #reply (ss) ’/patch1/#documentation’, ’A patch.’
 ← #reply (ss) ’/main_clock/#documentation’, ’A clock.’ ...
-...
+
+4.5.1 Namespace Exploration
+Prompt to discover what addresses appear at the next level below a base address. Prompt address appears as a normal address pattern which ends with the ’/’ character.
+→ /foo/bar/
+← #reply (sss) ’/foo/bar/’, ’test1’, ’test2’
+→ /foo/bar/test1/
+← #reply (s) ’/foo/bar/test1/’ # is a terminal node.
+
 4.5.4 Current Value
-...
+
 → /patch1/gain1 100.0
 → /patch1/gain1/#current-value
 ← #reply (sf) ’/patch1/gain1/#current-value’, 100.0
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Fri, 01 Feb 2013 07:05:25 -0000</pubDate><guid>https://sourceforge.net3286b8e712d6d03eec5147b768ecd12eabfc068a</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -46,7 +46,7 @@
 t - Timetag: an OSC timetag in NTP format, encoded in the data section

 ----
-[OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Allows remote discovery of our [OSC Schema].
+[OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Allows remote discovery of our [OSC_Schema].

 4.3.4 Handling Pattern Expansion
 Use of address-pattern expressions with a query prompt is equivalent to sending the prompt to every complete matching address. The server’s response should be as if this were the case.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Fri, 01 Feb 2013 06:59:03 -0000</pubDate><guid>https://sourceforge.net2e924a273bc8a0d7cc40ae6936a7b2cb6b1da266</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v2
+++ v3
@@ -15,13 +15,19 @@
 [OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Allows remote discovery of our OSC schema.

 ----
-For other documents search the web or visit:
+OSC References:
+
+READ THIS FIRST - Download: [Everything-About-OSC.mov](http://opensoundcontrol.org/files/Everything-About-OSC.mov)
+http://opensoundcontrol.org/publication/everything-you-ever-wanted-know-about-open-sound-control

 http://opensoundcontrol.org/files/osc-best-practices-final.pdf

 http://www.opensoundcontrol.org

 http://opensoundcontrol.org/osc-schemas-standardized-osc-address-spaces-plus-their-semantics
+
+Setting up bi-directional OSC between TouchOSC and Pure Data:
+http://hexler.net/docs/touchosc-getting-started

 ----
 Excerpts from various sources listed above:
@@ -48,3 +54,9 @@
 → /*/#documentation
 ← #reply (ss) ’/patch1/#documentation’, ’A patch.’
 ← #reply (ss) ’/main_clock/#documentation’, ’A clock.’ ...
+...
+4.5.4 Current Value
+...
+→ /patch1/gain1 100.0
+→ /patch1/gain1/#current-value
+← #reply (sf) ’/patch1/gain1/#current-value’, 100.0
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Fri, 01 Feb 2013 06:57:35 -0000</pubDate><guid>https://sourceforge.net88c7abaac14146624c86238fdbd4e897e07f9863</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v1
+++ v2
@@ -6,14 +6,28 @@
 ----
 OSC Specification

-[DOWNLOAD the current OSC 1.1 Spec](http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime) - latest update by CNMAT at Berkeley
+Our [OSC_Schema] is based on these 3 documents:

+[DOWNLOAD OSC 1.1 Spec Addendum](http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime) - Official update by CNMAT at Berkeley
+
+[OSC 1.0 Spec](http://opensoundcontrol.org/spec-1_0) - Use this with the OSC 1.1 Spec.
+
+[OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Allows remote discovery of our OSC schema.
+
+----
 For other documents search the web or visit:
+
+http://opensoundcontrol.org/files/osc-best-practices-final.pdf
+
 http://www.opensoundcontrol.org

-Excerpts from above sources are below:
+http://opensoundcontrol.org/osc-schemas-standardized-osc-address-spaces-plus-their-semantics
+
 ----
-OSC 1.1 Base Data Types (required)
+Excerpts from various sources listed above:
+
+----
+OSC 1.1 Base Data Types - (required as of OSC 1.1)

 i - Integer: two’s complement int32
 f - Float: IEEE float32
@@ -24,3 +38,13 @@
 N - Null: (aka nil, None, etc). No bytes are allocated in the argument data.
 I - Impulse: (aka “bang”), used for event triggers. No bytes are allocated in the argument data.
 t - Timetag: an OSC timetag in NTP format, encoded in the data section
+
+----
+[OSC Query System](http://opensoundcontrol.org/files/osc-query-system.pdf) - Allows remote discovery of our [OSC Schema].
+
+4.3.4 Handling Pattern Expansion
+Use of address-pattern expressions with a query prompt is equivalent to sending the prompt to every complete matching address. The server’s response should be as if this were the case.
+
+→ /*/#documentation
+← #reply (ss) ’/patch1/#documentation’, ’A patch.’
+← #reply (ss) ’/main_clock/#documentation’, ’A clock.’ ...
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Fri, 01 Feb 2013 02:51:26 -0000</pubDate><guid>https://sourceforge.net9a8f650df813a136980317cdac8fdb832d441f83</guid></item><item><title>WikiPage OSC_Spec modified by Shane Saxon</title><link>https://sourceforge.net/p/openantz/wiki/OSC_Spec/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;a class="alink" href="/p/openantz/wiki/Home/"&gt;[Home]&lt;/a&gt; - &lt;a class="alink" href="/p/openantz/wiki/Developer_Guide/"&gt;[Developer_Guide]&lt;/a&gt; - &lt;a class="alink" href="/p/openantz/wiki/Network_API/"&gt;[Network_API]&lt;/a&gt; - &lt;a class="alink" href="/p/openantz/wiki/OSC_Spec/"&gt;[OSC_Spec]&lt;/a&gt; hosted at &lt;a class="" href="http://openantz.com/"&gt;openANTz.com&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;also see:  &lt;a class="alink" href="/p/openantz/wiki/OSC_API/"&gt;[OSC_API]&lt;/a&gt; - &lt;a class="alink" href="/p/openantz/wiki/OSC_Schema/"&gt;[OSC_Schema]&lt;/a&gt; - updated 2012-01-31&lt;/p&gt;
&lt;h2 id="osc-docs-and-code-are-currently-in-progress-this-is-a-draft"&gt;OSC docs and code are currently in progress, this is a DRAFT!!!&lt;/h2&gt;
&lt;p&gt;OSC Specification&lt;/p&gt;
&lt;p&gt;&lt;a class="" href="http://cnmat.berkeley.edu/publication/features_and_future_open_sound_control_version_1_1_nime"&gt;DOWNLOAD the current OSC 1.1 Spec&lt;/a&gt; - latest update by CNMAT at Berkeley&lt;/p&gt;
&lt;p&gt;For other documents search the web or visit:&lt;br /&gt;
&lt;a href="http://www.opensoundcontrol.org"&gt;http://www.opensoundcontrol.org&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="excerpts-from-above-sources-are-below"&gt;Excerpts from above sources are below:&lt;/h2&gt;
&lt;p&gt;OSC 1.1 Base Data Types (required)&lt;/p&gt;
&lt;p&gt;i - Integer: two’s complement int32&lt;br /&gt;
f - Float: IEEE float32&lt;br /&gt;
s - NULL-terminated ASCII string&lt;br /&gt;
b - Blob, (aka byte array) with size&lt;br /&gt;
T - True: No bytes are allocated in the argument data.&lt;br /&gt;
F - False: No bytes are allocated in the argument data.&lt;br /&gt;
N - Null: (aka nil, None, etc). No bytes are allocated in the argument data.&lt;br /&gt;
I - Impulse: (aka “bang”), used for event triggers. No bytes are allocated in the argument data.&lt;br /&gt;
t - Timetag: an OSC timetag in NTP format, encoded in the data section&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Shane Saxon</dc:creator><pubDate>Fri, 01 Feb 2013 01:03:26 -0000</pubDate><guid>https://sourceforge.nete80214e8454499e0867f25611bcaad3d7c4466fb</guid></item></channel></rss>