3 research outputs found
S.IM.PL Serialization: Type System Scopes Encapsulate Cross-Language, Multi-Format Information Binding
Representing data outside of and between programs is important in software that stores, shares, and manipulates information. Formats for representing information, varying from human-readable verbose (XML) to light-weight, concise (JSON), and non-human-readable formats (TLV) have been developed and used by applications based on their data and communication requirements. Writing correct programs that produce information represented in these formats is a difficult and time-consuming task, as developers must write repetitive, tedious code to map loosely-typed serialized data to strongly-typed program objects. We developed S.IM.PL Serialization, a cross-language multi-format information binding framework to relieve developers from the burdens associated with the serialization of strongly-typed data structures. We developed type system scopes, a means of encapsulating data types and binding semantics as a cross-language abstract semantics graph. In comparison to representing data binding semantics and information structure through external forms such as schemas, configuration files, and interface description languages, type system scopes can be automatically generated from declarations in a data binding annotation language, facilitating software engineering. Validation is based on use in research applications, a study of how computer science graduate students use the software to develop applications, and performance benchmarks. As a case study, we also examine the cross-language development of a Team Coordination (TeC) game
Meta-Metadata: An Information Semantic Language and Software Architecture for Collection Visualization Application
Information collection and discovery tasks involve aggregation and manipulation
of information resources. An information resource is a location from which a human
gathers data to contribute to his/her understanding of something significant. Repositories
of information resources include the Google search engine, the ACM Digital Library,
Wikipedia, Flickr, and IMDB. Information discovery tasks involve having new ideas in
contexts of information collecting.
The information one needs to collect is large and diverse and hard to keep track
of. The heterogeneity and scale also make difficult writing software to support
information collection and discovery tasks. Metadata is a structured means for
describing information resources. It forms the basis of digital libraries and search
engines.
As metadata is often called, "data about data," we define meta-metadata as a
formal means for describing metadata as an XML based language. We consider the
lifecycle of metadata in information collection and discovery tasks and develop a metametadata
architecture which deals with the data structures for representation of metadata
inside programs, extraction from information resources, rules for presentation to users, and logic that defines how an application needs to operate on metadata. Semantic
actions for an information resource collection are steps taken to generate representative
objects, including formation of iconographic image and text surrogates, associated with
metadata.
The meta-metadata language serves as a layer of abstraction between information
resources, power users, and application developers. A power user can enhance an
existing collection visualization application by authoring meta-metadata for a new
information resource without modifying the application source code. The architecture
provides a set of interfaces for semantic actions which different information discovery
and visualization applications can implement according to their own custom
requirements. Application developers can modify the implementation of these semantic
actions to change the behavior of their application, regardless of the information
resource.
We have used our architecture in combinFormation, an information discovery
and collection visualization application and validated it through a user study