to create a Schema for JavaScript Object Notation
(JSON), a self descriptive language for data storage
and transmission, enabling the description of the data
structure. A useful Schema notation must have some
specific properties: identify most of the syntactic re-
quirements that the documents in the user domain fol-
low; allow efficient parsing; be readable to the user;
concede limited transformations corresponding to the
insertion of defaults; be modular and extensible to
support evolving classes (Klarlund et al., 2000). This
language aids in the creation of structured data and
automated tools to present the data in a human read-
able form, making easier the extraction and visualiza-
tion of useful information from data. Therefore, in
this field of structuring data, Schema largely super-
sedes Document type Definitions (DTDs) for markup
language.
One example of this procedure is Protégé, an
open source Ontology Editor and Knowledge Acqui-
sition System. Protégé is a framework written in Java
and uses Swing (Java GUI widget toolkit) to create
complex user interfaces. These interfaces provide
the user with tools to construct domain models and
knowledge-based applications with ontologies. As a
graphical tool for ontology editing and knowledge ac-
quisition, it can adapt to enable conceptual modelling
with new and evolving Semantic Web languages (Noy
et al., 2001). Protégé lets us, like the Schema, cre-
ate domains in a conceptual level without having to
know the syntax of the language ultimately used on
the Web to create interfaces, passing information, be-
tween other features. We can concentrate on the con-
cept types (integers, arrays, strings, ...) and relation-
ships in the domain and the facts about them that we
need to describe.
Using this mechanism in the project for structur-
ing the data, a Human Computer Interaction was cre-
ated with an innovative Knowledge Acquisition sys-
tem for controlling the actuation of a Biosignals Ac-
quisition System. One of the purposes, and as a prac-
tical example, is to control an electrostimulator en-
abling the user to create their own protocols, pursuing
a non-specific software for Electrostimulation. There-
fore, it allows the user to employ the software in dif-
ferent types of Electrostimulation applications:
• Electrotherapy: Rehabilitation (von Lewinski
et al., 2009); Spinal cord injury, stroke, sen-
sory deficits, and neurological disorders (Co-
gan, 2008); elicit electronarcosis, electrosleep and
electroanalgesia (Lebedev et al., 2002);
• Physical Conditioning: fitness; active recovery;
optimizing physical performance by improvement
of maximum strength of a muscle (muscular
tonus) in less time (Siff, 1990).
This work presents a novel Knowledge Acquisi-
tion System based on JSON Schema with the specific
focus on creating user interfaces to configure biosig-
nals acquisition devices, and with this information
control the actuation of that device. Ultimately, the
software will pursue usability and acceptability, be-
cause ease of use affects the users performance and
their satisfaction, while acceptably affects whether
the product is used or not (Holzinger and Leitner,
2005). Our proposal defines Application Program-
ming Interfaces (APIs) and low-level infrastructures
to create a system for controlling a biosignals acqui-
sition device, where the acquisition and actuation pa-
rameters are acquired from the user. At the core of
this system is a JSON Schema enabling validation
(data integrity), interaction (UI generation - forms and
code) and documentation.
2 DATA STRUCTURE
2.1 JSON
JSON is a simple, lightweight and human readable
text-data structure for information exchange. The
approach for information exchange is simpler than
XML, by the less verbose structure of the notation.
Interpreting JSON is native in some languages with
the existence of several support libraries that make
JSON a platform independent language (Crockford,
D., 2006). JSON structure is composed of name/value
pairs separated by comma, curly brackets holds ob-
jects and square brackets holds arrays. Values can be
numbers, strings, booleans, arrays, objects and null.
In the example below is an object containing infor-
mation of an address and phone number:
{"address":{
"streetAddress": "21 2nd Street",
"city":"New York"
},
"phoneNumber":
[{
"type":"home",
"number":"212 555-1234"
}]
}
Considering these features, JSON was selected as
the data structure of this work, and is defined by JSON
Schema.
WINSYS2012-InternationalConferenceonWirelessInformationNetworksandSystems
256