Universal Network Objects
Encyclopedia
In computing
, Universal Network Objects (UNO, branded as "Uno") is the component model used in the OpenOffice.org
application suite of programs. It is interface-based and designed to offer interoperability between different programming language
s, object models and machine architectures, on a single machine, within a LAN or over the Internet.
Users can implement or access UNO components from any programming language for which a language binding
exists. Complete UNO language bindings exist for C++
(compiler-dependent), Java
, Python
and Tcl. Work is in progress for Object REXX
. Bindings allowing access, but not writing, to components exist for StarOffice Basic
, OLE
Automation
and the .NET Common Language Infrastructure
.
Universal Network Objects operate within the URE: the UNO Runtime Environment.
The OpenOffice.org project makes UNO available under the LGPL as free
and open source
software.
Computing
Computing is usually defined as the activity of using and improving computer hardware and software. It is the computer-specific part of information technology...
, Universal Network Objects (UNO, branded as "Uno") is the component model used in the OpenOffice.org
OpenOffice.org
OpenOffice.org, commonly known as OOo or OpenOffice, is an open-source application suite whose main components are for word processing, spreadsheets, presentations, graphics, and databases. OpenOffice is available for a number of different computer operating systems, is distributed as free software...
application suite of programs. It is interface-based and designed to offer interoperability between different programming language
Programming language
A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely....
s, object models and machine architectures, on a single machine, within a LAN or over the Internet.
Users can implement or access UNO components from any programming language for which a language binding
Language binding
In computing, a binding from a programming language to a library or OS service is an API providing that service in the language.Many software libraries are written in systems programming languages such as C or C++...
exists. Complete UNO language bindings exist for C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
(compiler-dependent), Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...
and Tcl. Work is in progress for Object REXX
Object REXX
The Object REXX programming language is an object-oriented scripting language initially produced by IBM for OS/2. It is a follow-on to and a significant extension of the "Classic Rexx" language originally created for the CMS component of VM/SP and later ported to MVS, OS/2 and PC DOS.On October 12,...
. Bindings allowing access, but not writing, to components exist for StarOffice Basic
StarOffice Basic
StarOffice Basic is a dialect of BASIC that is included with the OpenOffice.org and StarOffice office suites.-Example:...
, OLE
Object Linking and Embedding
Object Linking and Embedding is a technology developed by Microsoft that allows embedding and linking to documents and other objects. For developers, it brought OLE Control eXtension , a way to develop and use custom user interface elements...
Automation
OLE Automation
In Microsoft Windows applications programming, OLE Automation , is an inter-process communication mechanism based on Component Object Model that was intended for use by scripting languages – originally Visual Basic – but now are used by languages run on Windows...
and the .NET Common Language Infrastructure
Common Language Infrastructure
The Common Language Infrastructure is an open specification developed by Microsoft and standardized by ISO and ECMA that describes the executable code and runtime environment that form the core of the Microsoft .NET Framework and the free and open source implementations Mono and Portable.NET...
.
Universal Network Objects operate within the URE: the UNO Runtime Environment.
The OpenOffice.org project makes UNO available under the LGPL as free
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...
and open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
software.