All Topics  
Microsoft Silverlight

 

   Email Print
   Bookmark   Link






 

Microsoft Silverlight



 
 
Microsoft Silverlight is a programmable web browser
Web browser

A Web browser is a application software which enables a user to display and interact with text, images, videos, music, games and other information typically located on a Web page at a website on the World Wide Web or a local area network....
 plugin
Plugin

In computing, a plug-in consists of a computer program that interacts with a host application software to provide a certain, usually very specific, function "on demand"....
 that enables features such as animation
Animation

Animation is the rapid display of a sequence of images of 2-D or 3-D artwork or model positions in order to create an illusion of movement. It is an optical illusion of Motion due to the phenomenon of persistence of vision, and can be created and demonstrated in a number of ways....
, vector graphics
Vector graphics

Vector graphics is the use of geometrical Primitive s such as point s, line , curves, and shapes or polygon, which are all based upon mathematical equations, to represent s in computer graphics....
 and audio-video playback
Multimedia

Multimedia is media and content that utilizes a combination of different content format. The term can be used as a noun or as an adjective describing a medium as having multiple content forms....
 that characterizes rich Internet application
Rich Internet application

Rich Internet applications are web applications that have some of the characteristics of Application software, typically delivered by way of an Ajax framework, Proprietary software web browser Plug-in s, advanced javascript compiler technology, or independently via Sandbox es or virtual machines....
s. Version 2.0, released October 2008, brings additional interactivity features
Interactivity

In the fields of information science, communication, and industrial design, there is debate over the meaning of Interactivity. In the "contingency view" of interactivity, there are three levels: Noninteractive, when a message is not related to previous messages; Reactive, when a message is related only to one immediately previous message; an...
 and support for .NET languages and development tools
Integrated development environment

An integrated development environment also known as integrated design environment or integrated debugging environment is a software application that provides comprehensive facilities to computer programmers for software development....
. It is compatible with multiple web browser products used on Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 and Mac OS X
Mac OS X

Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
 operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
s. Mobile devices, starting with Windows Mobile 6 and Symbian (Series 60) phones, will also be supported.






Discussion
Ask a question about 'Microsoft Silverlight'
Start a new discussion about 'Microsoft Silverlight'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Microsoft Silverlight is a programmable web browser
Web browser

A Web browser is a application software which enables a user to display and interact with text, images, videos, music, games and other information typically located on a Web page at a website on the World Wide Web or a local area network....
 plugin
Plugin

In computing, a plug-in consists of a computer program that interacts with a host application software to provide a certain, usually very specific, function "on demand"....
 that enables features such as animation
Animation

Animation is the rapid display of a sequence of images of 2-D or 3-D artwork or model positions in order to create an illusion of movement. It is an optical illusion of Motion due to the phenomenon of persistence of vision, and can be created and demonstrated in a number of ways....
, vector graphics
Vector graphics

Vector graphics is the use of geometrical Primitive s such as point s, line , curves, and shapes or polygon, which are all based upon mathematical equations, to represent s in computer graphics....
 and audio-video playback
Multimedia

Multimedia is media and content that utilizes a combination of different content format. The term can be used as a noun or as an adjective describing a medium as having multiple content forms....
 that characterizes rich Internet application
Rich Internet application

Rich Internet applications are web applications that have some of the characteristics of Application software, typically delivered by way of an Ajax framework, Proprietary software web browser Plug-in s, advanced javascript compiler technology, or independently via Sandbox es or virtual machines....
s. Version 2.0, released October 2008, brings additional interactivity features
Interactivity

In the fields of information science, communication, and industrial design, there is debate over the meaning of Interactivity. In the "contingency view" of interactivity, there are three levels: Noninteractive, when a message is not related to previous messages; Reactive, when a message is related only to one immediately previous message; an...
 and support for .NET languages and development tools
Integrated development environment

An integrated development environment also known as integrated design environment or integrated debugging environment is a software application that provides comprehensive facilities to computer programmers for software development....
. It is compatible with multiple web browser products used on Microsoft Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
 and Mac OS X
Mac OS X

Mac OS X is a line of computer operating systems developed, marketed, and sold by Apple Inc., and since 2002 has been included with all new Macintosh computer systems....
 operating system
Operating system

An operating system is an interface between hardware and applications; it is responsible for the management and coordination of activities and the sharing of the limited resources of the computer....
s. Mobile devices, starting with Windows Mobile 6 and Symbian (Series 60) phones, will also be supported. A third-party free software
Free software

Free Software or software libre 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 minimal restrictions only to ensure that further recipients can also do these things and to prevent consumer-facing hardware...
 implementation named Moonlight
Moonlight (runtime)

Moonlight is a free software and open-source software implementation of the Microsoft Silverlight which was originally developed by Microsoft. Moonlight is currently being developed by the Mono Project....
 is under development to bring compatible functionality to GNU
GNU

GNU is a computer operating system composed entirely of free software. Its name is a recursive acronym for GNU's Not Unix; it was chosen because its design is Unix-like, but differs from Unix by being free software and containing no Unix code....
/Linux
Linux

Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
.

Overview

Silverlight provides a retained mode
Retained mode

In computing, retained mode rendering is a style for application programming interfaces of graphics libraries, in which the libraries retain a complete model of the objects to be rendered....
 graphics system similar to Windows Presentation Foundation
Windows Presentation Foundation

The Windows Presentation Foundation , formerly code-named Avalon, is a graphical subsystem in .NET Framework 3.0 , which uses a markup language, known as Extensible Application Markup Language, for rich user interface development....
, and integrates multimedia
Multimedia

Multimedia is media and content that utilizes a combination of different content format. The term can be used as a noun or as an adjective describing a medium as having multiple content forms....
, graphics
Computer graphics

Computer graphics are graphics created by computers and, more generally, the representation and manipulation of pictorial data by a computer....
, animation
Animation

Animation is the rapid display of a sequence of images of 2-D or 3-D artwork or model positions in order to create an illusion of movement. It is an optical illusion of Motion due to the phenomenon of persistence of vision, and can be created and demonstrated in a number of ways....
s and interactivity
Interactivity

In the fields of information science, communication, and industrial design, there is debate over the meaning of Interactivity. In the "contingency view" of interactivity, there are three levels: Noninteractive, when a message is not related to previous messages; Reactive, when a message is related only to one immediately previous message; an...
 into a single runtime environment. It is being designed to work in conjunction with XAML and is scriptable with JavaScript
JavaScript

JavaScript is a scripting language widely used for client-side web development. It was the originating Programming language dialect of the ECMAScript standard....
. XAML can be used for marking up the vector graphics
Vector graphics

Vector graphics is the use of geometrical Primitive s such as point s, line , curves, and shapes or polygon, which are all based upon mathematical equations, to represent s in computer graphics....
 and animations. Textual content created with Silverlight is searchable and indexable
Index (search engine)

Search engine index collects, parses, and stores data to facilitate fast and accurate information retrieval. Index design incorporates interdisciplinary concepts from linguistics, cognitive psychology, mathematics, informatics, physics and computer science....
 by search engine
Search engine

A search engine is an information retrieval designed to help find information stored on a computer system. The search results are usually presented in a list and are commonly called hits....
s as it is not compiled
Compiled language

A compiled language is a programming language whose programming language implementations are typically compilers , and not interpreter s .The term is somewhat vague; in principle any language can be implemented with a compiler or with an interpreter....
, but represented as text (XAML). Silverlight can also be used to create Windows Sidebar
Windows Sidebar

The Windows Sidebar is a widget engine for Microsoft Gadgets, which is anchored to the side of the desktop . The Sidebar is included with Windows Vista and is available on Windows Server 2008 as an optional component....
 gadgets
Microsoft Gadgets

Microsoft Gadgets are light-weight single-purpose applications that can sit on the user's computer desktop, or are hosted on a web page. According to Microsoft, it will be possible for the different types of gadgets to run on different environments without modification, but this is currently not the case....
 for Windows Vista
Windows Vista

Windows Vista is one member in a family of operating systems developed by Microsoft for use on personal computers, including home and business Desktop computer, laptops, Tablet PCs, and media center PCs....
.

Silverlight supports playback of WMV
Windows Media Video

Windows Media Video is a Data compression video file format for several Proprietary software codecs developed by Microsoft. The original codec, known as WMV, was originally designed for Internet streaming applications, as a competitor to RealVideo....
, WMA
Windows Media Audio

Windows Media Audio is an audio data compression technology developed by Microsoft. The name can be used to refer to its audio file format or its audio codecs....
 and MP3 media content across all supported browsers without requiring Windows Media Player
Windows Media Player

Windows Media Player is a digital media media player and media library application developed by Microsoft that is used for playing sound reproduction, video and viewing s on personal computers running the Microsoft Windows operating system, as well as on Pocket PC and Windows Mobile-based devices....
, the Windows Media Player
Windows Media Player

Windows Media Player is a digital media media player and media library application developed by Microsoft that is used for playing sound reproduction, video and viewing s on personal computers running the Microsoft Windows operating system, as well as on Pocket PC and Windows Mobile-based devices....
 ActiveX
ActiveX

ActiveX is a component Object Model developed by Microsoft for Microsoft Windows. By using the Component Object Model runtime, developers can create Component-based software engineering that perform a particular function or a set of functions....
 control or Windows Media
Windows Media

Windows Media is a multimedia framework for media clip creation and distribution for Microsoft Windows. It consists of a software development kit with several application programming interfaces and a number of prebuilt technologies, and is the replacement of NetShow technologies....
 browser plugins. Because Windows Media Video 9
Windows Media Video

Windows Media Video is a Data compression video file format for several Proprietary software codecs developed by Microsoft. The original codec, known as WMV, was originally designed for Internet streaming applications, as a competitor to RealVideo....
 is an implementation of the SMPTE
Society of Motion Picture and Television Engineers

The Society of Motion Picture and Television Engineers or SMPTE, , founded in 1916 as the Society of Motion Picture Engineers or SMPE, is an international professional association, based in the United States of America, of engineers working in the motion imaging industries....
 VC-1
VC-1

VC-1 is the informal name of the SMPTE 421M video codec standard initially developed by Microsoft. It was released on April 3, 2006 by SMPTE. It is now a supported standard for HD DVDs, Blu-ray Discs, and Windows Media Video 9....
 standard, Silverlight also supports VC-1 video, though still only in an ASF container format. Furthermore, the Software license agreement
Software license agreement

A software license agreement is a contract between a producer and a user of computer software which grants the user a software license. Most often, a software license agreement indicates the terms under which an end-user may utilize the licensed software, in which case the agreement is called an end-user license agreement or EULA...
 says VC-1 is only licensed for the "personal and non-commercial use of a consumer". Silverlight does not support playback of H.264 video, though support in future versions has been officially announced. Silverlight makes it possible to dynamically load XML content that can be manipulated through a DOM
Document Object Model

The Document Object Model is a platform- and programming language-independent standard object model for representing HTML or XML documents as well as an Application Programming Interface for querying, traversing and manipulating such documents....
 interface, a technique that is consistent with conventional Ajax
Ajax (programming)

Ajax, or AJAX , is a group of interrelated web development techniques used to create interactive web applications or rich Internet applications....
 techniques. Silverlight exposes a Downloader object which can be used to download content, like scripts, media assets or other data, as may be required by the application. With version 2.0, the programming logic can be written in any .NET language, including some derivatives of common dynamic programming language
Dynamic programming language

Dynamic programming language is a term used broadly in computer science to describe a class of high-level programming languages that execute at runtime many common behaviors that other languages might perform during compiler, if at all....
s like Iron Ruby
Ruby (programming language)

Ruby is a dynamic programming language, reflection , general purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features....
 and Iron Python
Python (programming language)

Python is a general-purpose high-level programming language. Its design philosophy emphasizes code readability. Python's core syntax and semantics are Minimalism , while the standard library is large and comprehensive....
.

Releases


Silverlight 1.0

Silverlight 1.0, which was developed under the codename Windows Presentation Foundation/Everywhere (WPF/E), consists of the core presentation framework, which is responsible for UI, interactivity and user input, basic UI controls, graphics and animation, media playback, Digital rights management
Digital rights management

Digital rights management refers to access control technologies used by publishers, copyright holders, and hardware manufacturers to limit usage of digital media or devices....
, and DOM
Document Object Model

The Document Object Model is a platform- and programming language-independent standard object model for representing HTML or XML documents as well as an Application Programming Interface for querying, traversing and manipulating such documents....
 integration. It is made up of the following components:
  • Input – handling input from devices like keyboard, mouse, stylus etc.
  • UI core – managing rendering of bitmap images (including compressed raster images like JPEG
    JPEG

    In computing, JPEG is a commonly used method of for photographic images. The degree of compression can be adjusted, allowing a selectable tradeoff between storage size and image quality....
    ), vector graphics, text and animations.
  • Media – playback of MP3
    MP3

    MPEG-1 Audio Layer 3, more commonly referred to as MP3, is a digital audio Encoder format using a form of lossy data compression. It is a common audio format for consumer audio storage, as well as a de facto standard encoding for the transfer and playback of music on digital audio players....
    , WMA
    Windows Media Audio

    Windows Media Audio is an audio data compression technology developed by Microsoft. The name can be used to refer to its audio file format or its audio codecs....
     Standard, WMV7, WMV8 and WMV9/VC-1 streams.
  • XAML
    XAML

    Extensible Application Markup Language is a declarative XML-based language created by Microsoft which is used to initialize structured values and objects....
     – to allow the UI layout to be created using XAML
    XAML

    Extensible Application Markup Language is a declarative XML-based language created by Microsoft which is used to initialize structured values and objects....
     markup language.


A Silverlight application starts by invoking the Silverlight control from the HTML page, which then loads up a XAML
XAML

Extensible Application Markup Language is a declarative XML-based language created by Microsoft which is used to initialize structured values and objects....
 file. The XAML file contains a Canvas object, which acts as placeholder for other elements. Silverlight provides various geometrical primitives like lines, ellipses and other shapes, to elements like text, images, and media etc. The elements are properly positioned to achieve the desired layout. Any arbitrary shape can be created as well. These elements can be animated using Event triggers; some animation effects are predefined, others can be created as composite of the pre-defined effects. Events like keyboard or mouse movements can also raise Events which can be handled by custom scripts.

Programmatic manipulation of the UI is achieved by using scripting languages to modify the Document Object Model
Document Object Model

The Document Object Model is a platform- and programming language-independent standard object model for representing HTML or XML documents as well as an Application Programming Interface for querying, traversing and manipulating such documents....
 of the Silverlight Canvas object. To facilitate this, Silverlight exposes a DOM
Document Object Model

The Document Object Model is a platform- and programming language-independent standard object model for representing HTML or XML documents as well as an Application Programming Interface for querying, traversing and manipulating such documents....
 API, accessible from any scripting language supported by Silverlight, which in version 1.0 release is limited to JavaScript running in the browser. However, there are no UI widgets built in. The native widgets of the browser must be overlaid on top of the Silverlight Canvas for user input. Support for data formats is limited to XML and JSON
JSON

JSON , short for JavaScript Object Notation, is a lightweight computer data interchange format. It is a text-based, human-readable format for representing simple data structures and associative arrays ....
 only.

Silverlight 2

Version 2.0 brings improved interactivity and support for .NET languages and development tools
Integrated development environment

An integrated development environment also known as integrated design environment or integrated debugging environment is a software application that provides comprehensive facilities to computer programmers for software development....
.

Silverlight 2.0 (previously referred to as version 1.1) includes a version of the .NET Framework
.NET Framework

The Microsoft .NET Framework is a software framework that is available with several Microsoft Windows operating systems. It includes a large Library of coded solutions to prevent common programming problems and a virtual machine that manages the execution of programs written specifically for the Software framework....
, implementing the same full Common Language Runtime
Common Language Runtime

The Common Language Runtime is a core component of Microsoft .NET Framework initiative. It is Microsoft's implementation of the Common Language Infrastructure standard, which defines an execution environment for program code....
 version as .NET Framework
.NET Framework

The Microsoft .NET Framework is a software framework that is available with several Microsoft Windows operating systems. It includes a large Library of coded solutions to prevent common programming problems and a virtual machine that manages the execution of programs written specifically for the Software framework....
 3.0; so it can execute programs written in any .NET language (however you can not reference assemblies compiled with the regular .NET Framework by default). Unlike the CLR included with .NET Framework, multiple instances of the CoreCLR included in Silverlight can be hosted in one process. With this, the XAML layout markup file (.xaml file) can be augmented by code-behind code, written in any .NET language, which contains the programming logic. It can be used to programmatically manipulate both the Silverlight application and the HTML page which hosts the Silverlight control. The XAML markup as well as the code, is compiled into .NET assemblies
.NET assembly

In the Microsoft .NET software framework, an assembly is a partially compiler code library for use in deployment, versioning and security. In the Microsoft Windows implementation of .NET, an assembly is a PE file for Windows GUI on Intel x86....
 which are then compressed using ZIP
ZIP (file format)

The ZIP file format is a data compression and file archiver file format. A ZIP file contains one or more files that have been compressed to reduce file size, or stored as-is....
 and stored in a .xap file.

Silverlight ships with a lightweight class library which includes features such as extensible controls, XML Web Services
Web service

A Web service is defined by the W3C as "a software system designed to support interoperability Machine to Machine interaction over a computer network"....
, networking
Computer networking

Computer networking is the engineering discipline concerned with communication between computer systems or Peripheral devices. Networking, routers, routing protocols, and networking over the public Internet have their specifications defined in documents called Request for Commentss....
 components and LINQ
Language Integrated Query

Language Integrated Query is a Microsoft .NET Framework component that adds native data Query language capabilities to List of .NET languages....
 APIs
Application programming interface

An application programming interface is a set of subroutine, data structures, class and/or Protocol provided by library and/or operating system Service s in order to support the building of applications....
. This class library is a subset of, and is considerably smaller than, .NET Framework's
.NET Framework

The Microsoft .NET Framework is a software framework that is available with several Microsoft Windows operating systems. It includes a large Library of coded solutions to prevent common programming problems and a virtual machine that manages the execution of programs written specifically for the Software framework....
 Base Class Library
Base Class Library

The Base Class Library is a standard library available to all languages using the .NET Framework. .NET includes the BCL in order to encapsulate a large number of common functions, such as file reading and writing, graphic rendering, database interaction, and XML document manipulation, which makes the programmer's job easier....
. Silverlight code runs in a sandbox
Sandbox (computer security)

In computer security, a sandbox is a security mechanism for safely running programs. It is often used to execute untested code, or untrusted programs from unverified third-parties, suppliers and untrusted users....
, thus preventing the invocation of platform APIs.

The version of .NET Framework in Silverlight adds a subset of WPF
Windows Presentation Foundation

The Windows Presentation Foundation , formerly code-named Avalon, is a graphical subsystem in .NET Framework 3.0 , which uses a markup language, known as Extensible Application Markup Language, for rich user interface development....
 UI-programming model, including support for shapes, documents, media and animation objects of WPF. Beta 2 onwards, it ships with more than 30 UI controls (including TextBox, CheckBox, Slider, ScrollViewer, and Calendar controls), for two-way databinding support, automated layout management (by means of StackPanel, Grid etc) as well as data-manipulation controls, such as DataGrid
Grid view

A grid view or a datagrid is a graphical user interface element that presents a tabular view of data. A typical grid view also supports some or all of the following:...
 and ListBox. UI controls are skinnable using a template-based approach. Third-party libraries of expanded UI-control sets are also available.

The included Base-Class Library (BCL) provides classes for collections, reflection
Reflection (computer science)

In computer science, reflection is the process by which a computer program can observe and modify its own structure and behaviour. The programming paradigm driven by reflection is called reflective programming....
, regular expression
Regular expression

In computing, regular expressions provide a concise and flexible means for identifying strings of text of interest, such as particular characters, words, or patterns of characters....
s, string handling and data access
Data access

Data access typically refers to software and activities related to storing, retrieving, or acting on data housed in a database or other repository....
. It also supports LINQ
Language Integrated Query

Language Integrated Query is a Microsoft .NET Framework component that adds native data Query language capabilities to List of .NET languages....
, with full support for LINQ to Objects and expression trees
Language Integrated Query

Language Integrated Query is a Microsoft .NET Framework component that adds native data Query language capabilities to List of .NET languages....
. Almost all of the System.Linq and System.Linq.Expression namespaces are exposed. It also supports serialization
Serialization

In computer science, in the context of data storage and transmission, serialization is the process of converting an object into a sequence of bits so that it can be stored on a storage medium or transmitted across a computer network connection link....
 of objects, for data persistence
Persistent data structure

In computing, a persistent data structure is a data structure which always preserves the previous version of itself when it is modified; such data structures are effectively immutable, as their operations do not update the structure in-place, but instead always yield a new updated structure....
. Silverlight can handle data in RSS
RSS

RSS is a three-letter abbreviation that can stand for a wide variety of terms....
 or JSON
JSON

JSON , short for JavaScript Object Notation, is a lightweight computer data interchange format. It is a text-based, human-readable format for representing simple data structures and associative arrays ....
 format, in addition to XML. The BCL provides enhanced support for working with XML data, including the XMLReader and XMLWriter classes. Silverlight 2 also supports asynchronous programming via the use of the threading libraries.

Silverlight also includes classes for data access
Data access

Data access typically refers to software and activities related to storing, retrieving, or acting on data housed in a database or other repository....
 over XML-based Web services, REST
Rest

Rest may refer to:* Rest, in English may mean: leisure, human relaxation, or sleep; see the...
, WCF Services
Windows Communication Foundation

Windows Communication Foundation, or just WCF, is a programming framework used to build applications that inter-communicate. WCF is the part of the .NET Framework dedicated to communications....
 and ADO.NET Data Services
ADO.NET Data Services

ADO.NET Data Services is a platform for what Microsoft calls Data Services. It is actually a combination of the runtime and a web service through which the services are exposed....
. The networking support in Silverlight can be used by Silverlight applications to communicate using HTTP, or at the lower socket
Internet socket

An Internet socket is used in inter-process communication across an Internet Protocol based Computer_network such as the Internet. Internet sockets constitute a mechanism for delivering incoming data packets to the appropriate application process or Thread , based on a combination of local and remote IP addresses and port numbers....
 level. Cross-domain communication is supported. Silverlight uses an XML-based configuration file to control the cross-domain resource-access policy, for both HTTP and socket connections. It can be used by site administrators to control which resources a Silverlight application can access, when that application did not originate in the domain of the site. In addition, Silverlight also supports the Adobe Flash
Adobe Flash

Adobe Flash is a multimedia Platform created by Macromedia and currently developed and distributed by Adobe Systems. Since its introduction in 1996, Flash has become a popular method for adding animation and interactivity to web pages; Flash is commonly used to create animation, advertisements, and various web page components, to integrate...
 Cross-domain policy file format. Silverlight sockets can only initiate a connection; they cannot listen for connections.

Silverlight 2 includes the Dynamic Language Runtime
Dynamic Language Runtime

The Dynamic Language Runtime from Microsoft is an ongoing effort to bring a set of services that run on top of the Common Language Runtime and provides language services for several different dynamic languages....
 (DLR) which allows dynamic compilation and execution of dynamic (scripting) languages. Compilers for the languages based on the DLR (including IronPython
IronPython

IronPython is an implementation of the Python targeting the .NET Framework and Mono , created by Jim Hugunin. Version 1.0 was released on September 5, 2006....
 and IronRuby
IronRuby

IronRuby is an upcoming implementation of the Ruby targeting Microsoft .NET framework. It is implemented on top of the Dynamic Language Runtime, a library running on top of Common Language Runtime 2.0 that provides dynamic typing and dynamic method dispatch, among other things, for dynamic languages....
) are [to be?] packaged with the Dynamic Languages application in the .xap package. The Dynamic Languages SDK includes a web server
Web server

The term web server can mean one of two things:# A computer program that is responsible for accepting Hypertext Transfer Protocol requests from clients , and Server them HTTP responses along with optional data contents, which usually are web pages such as Hypertext Markup Language documents and linked objects ....
 named , that can dynamically package all the dependencies for the Dynamic Languages application and serve it to the browser. The first upcoming languages written for the DLR are Managed JScript
JScript

JScript is the Microsoft dialect of the ECMAScript scripting language specification.JavaScript , JScript, and ECMAScript are very similar languages....
, IronPython
IronPython

IronPython is an implementation of the Python targeting the .NET Framework and Mono , created by Jim Hugunin. Version 1.0 was released on September 5, 2006....
 2.0, and IronRuby
IronRuby

IronRuby is an upcoming implementation of the Ruby targeting Microsoft .NET framework. It is implemented on top of the Dynamic Language Runtime, a library running on top of Common Language Runtime 2.0 that provides dynamic typing and dynamic method dispatch, among other things, for dynamic languages....
. Microsoft also plans to build Visual Basic .NET 10.0 (VBx)
Visual Basic .NET

Visual Basic , formerly called Visual Basic .NET , is an object-oriented programming computer language that can be viewed as an evolution of Microsoft Visual Basic implemented on the .NET Framework....
 on the DLR. All four languages share the same infrastructure, to allow Silverlight to compile and execute the language source. Conversely, other .NET languages must be compiled ahead-of-time and delivered to Silverlight as .NET assemblies. The implementation of Managed JScript conforms to the ECMAScript
ECMAScript

ECMAScript is a scripting language, standardized by Ecma International in the ECMA-262 Specification . The language is widely used on the World Wide Web, and is often confused with JavaScript or JScript, the two major Programming language dialect from which ECMAScript was standardized....
 3.0 specification, and Microsoft claims that it is 250 times faster than interpreted JScript.

With the integration of .NET Framework, Silverlight also allows HTML-managed code
Managed code

Managed code is Source code that executes under the management of a virtual machine, unlike unmanaged code, which is executed directly by the computer's Central processing unit....
 interaction, which enables the manipulation of HTML
HTML

HTML, an Acronym and initialism of HyperText Markup Language, is the predominant markup language for Web pages. It provides a means to describe the structure of text-based information in a document?by denoting certain text as links, headings, paragraphs, lists, and so on?and to supplement that text with interactive forms, embedded '...
 DOM
Document Object Model

The Document Object Model is a platform- and programming language-independent standard object model for representing HTML or XML documents as well as an Application Programming Interface for querying, traversing and manipulating such documents....
 elements from managed code
Managed code

Managed code is Source code that executes under the management of a virtual machine, unlike unmanaged code, which is executed directly by the computer's Central processing unit....
, and permits JavaScript code to call managed code and use objects instantiated by managed code. Silverlight encloses JavaScript
JavaScript

JavaScript is a scripting language widely used for client-side web development. It was the originating Programming language dialect of the ECMAScript standard....
 objects and DOM
Document Object Model

The Document Object Model is a platform- and programming language-independent standard object model for representing HTML or XML documents as well as an Application Programming Interface for querying, traversing and manipulating such documents....
 elements in managed wrappers to make them available from managed code. While there is no provision for calling JavaScript code directly in the 1.1 alpha release, managed-code events can fire JavaScript handlers. A Silverlight instance does not need to have a UI component in order to manipulate the HTML DOM from managed code. It is done by creating an XAML Canvas with both width and height set to zero, and using its code-behind code to modify the Document Object Model
Document Object Model

The Document Object Model is a platform- and programming language-independent standard object model for representing HTML or XML documents as well as an Application Programming Interface for querying, traversing and manipulating such documents....
 of the HTML page via the APIs in the System.Browser namespace.

Silverlight 2 includes Deep Zoom, a technology derived from Microsoft Live Labs Seadragon. It allows users to zoom into, or out of, an image (or a collage of images), with smooth transitions, using the mouse wheel. The images can scale from 2 or 3 megapixels in resolution into the gigapixel range, but the user need not wait for it to be downloaded entirely; rather, Silverlight downloads only the parts in view, optimized for the zoom level being viewed. Beta 2 onwards, Deep Zoom uses an XML-based file format.

New media features in Silverlight 2 include:
  • WMA Professional support, including new WMA 10 Pro low-bitrate modes, although multi-channel audio content is still restricted to stereo playback
  • Content protection powered by Microsoft PlayReady
    PlayReady

    PlayReady is a Digital Rights Management product from Microsoft for portable devices. It was announced in February 2007 and is oriented primarily to the mobile market....
     DRM client
  • Server-side playlists in Windows Media Services
  • Media Stream Source API


The Media Stream Source is a powerful API responsible for enabling another much-talked-about feature: adaptive streaming of media. Adaptive streaming allows the player application to choose the bit rate of the media based on available client bandwidth and CPU resources. Media Stream Source allows the developer to specify a custom method of retrieving media data, the only requirement being that the final video and audio streams be presented to Silverlight runtime in a format that Silverlight can decode (VC-1, H.264, WMA, MP3, etc). This allows extensible support for otherwise natively unsupported file formats (i.e. MP4, Matroska, Ogg), protocols (i.e. Shoutcast) and delivery methods (i.e. adaptive streaming, P2P). Microsoft first publicly showcased the power of Media Stream Source by powering the website with their own implementation of adaptive streaming.

Silverlight 2 also allows limited filesystem access to Silverlight applications. It can use the operating system's native file dialog box to browse to any file (to which the user has access). The file is sanitized of path information, to prevent the application from getting access to information such as user name, and can be opened only in read-only mode. For local storage of data, Silverlight provides isolated local storage (isostorage), namely, outside the browser cache, in a folder hidden inside the private user-profile folder. It is set to 1 MB per URL by default, but this can be changed by the user. Data stored by a Silverlight application in the isostorage is identified by the URL from which it loads, and can be accessed by that application only. All instances of Silverlight share the same isostorage, so all instances of the same Silverlight application can share the saved data, even if they are running on different browsers.

Silverlight CoreCLR uses an attribute-based security model, as opposed to the Code Access Security
Code Access Security

Code Access Security , in the Microsoft .NET framework, is Microsoft's solution to prevent untrusted code from performing privileged actions. When the Common Language Runtime loads an .NET assemblies it will obtain #Evidence for the assembly and use this to identify the #Code group that the assembly belongs to....
 (CAS) model of the desktop version of .NET Framework. Assemblies are marked with a security attribute, which can be transparent (SecurityTransparentAttribute), safecritical (SecuritySafeCriticalAttribute) or critical (SecurityCriticalAttribute). Methods in transparent assemblies run with partial trust, and codes within such assemblies cannot call critical methods (methods which can cause system-wide changes); neither can transparent assemblies contain unverifiable code (use the unsafe C# keyword or use pointers) or invoke system functions by means of P/Invoke. Code in both critical and safecritical assemblies run with full trust, and are therefore not subject to such limitations. However, a transparent method can call a safecritical method, and a safecritical method can call a critical method. In such a case, the safecritical method will verify that the call is both safe and within the limited rights of the caller; if so, then the safecritical method will proxy
Proxy pattern

In computer programming, the proxy pattern is a software design pattern.A proxy, in its most general form, is a class functioning as an interface to something else....
 the call to the requested critical method. In fact, the IsoStorage APIs are exposed as safecritical methods. An assembly whose security attribute is unset is run as a transparent method. Analogous limitations also apply to type-inheritance; namely, in the cases of virtual-method calls and interface-method calls. Silverlight assemblies can contain members that are not usable by CoreCLR, as long as they can be processed by the .NET Framework CLR; such methods will not be loaded when the assembly is being executed by CoreCLR.

However, only platform code is allowed to be marked as critical or safecritical. The Silverlight runtime ensures that platform assemblies are loaded only from the Silverlight installation directory, and are digitally signed
Digital signature

A digital signature or digital signature scheme is a type of asymmetric key algorithm. For messages sent through an insecure channel, a properly implemented digital signature gives the receiver reason to believe the message was sent by the claimed sender....
 by Microsoft. This effectively means that user-application assemblies can only be transparent code (run under partial trust and limited rights). Platform code can be marked with either attribute. The BCL methods of the .NET Framework, which have the Internet attribute set, allowing them to be called from untrusted code originating from Internet, are exposed in Silverlight BCL as transparent methods.

Silverlight 3

At the IBC2008 show in Amsterdam (September 12-16, 2008) Microsoft announced that the next major release of Silverlight will feature support for H.264 video and AAC
Advanced Audio Coding

Advanced Audio Coding is a standardized, lossy data compression Audio data compression and encoder scheme for digital audio. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at many bit rates....
 audio decoding. Microsoft also showed a technical preview of H.264 playback in Silverlight at the same show.

Silverlight 3 will also support 3D hardware acceleration

At MIX09 in Las Vegas (March 18-20) a Microsoft spokesperson is believed to announce more information about Silverlight 3.

Release history

Version nameVersion numberRelease date
1.0 CTP1.0.?December 2006
1.0 RTW1.0.208162007-09-05
2.0 Pre-Release
(As )
1.1.20926.02007-09-05
1.0 service release1.0.21115.02007-11-20
1.0 service release1.0.30109.02008-01-15
2 Beta 12.0.30226.22008-03-05
1.0 service release1.0.30401.02008-04-08
2 Beta 2 2.0.30523.6 2008-06-06
2.0.30523.8 2008-07-16
1.0 service release 1.0.30715.02008-07-27
2.0 RC0 2.0.30523.9 2008-09-25
2 RTW 2.0.31005.0 October 14, 2008
2 GDR 1 2.0.40115.0 2009-02-19


Compatibility


Operating Systems and Web Browsers

The following table presents an availability and compatibility matrix of Silverlight versions for various operating systems and web browsers.
OS/browserChrome 1.0.154
Google Chrome

Google Chrome is a web browser developed by Google and based on the WebKit layout engine and application framework.In February 2009, it had a share of 1.15% of the web browser market....
IE 6
Internet Explorer 6

Microsoft Internet Explorer 6 , is a graphical user interface web browser developed by Microsoft and included as part of the Microsoft Windows XP and Windows Server 2003 lines of operating systems....
 SP1
IE 6 SV1IE 7
Internet Explorer 7

Windows Internet Explorer 7 is a web browser released by Microsoft in October 2006. Internet Explorer 7 is part of a long line of versions of Internet Explorer and was the first major update to the browser in more than 5 years....
IE 8
Internet Explorer 8

Windows Internet Explorer 8 is the next version of Internet Explorer, succeeding Internet Explorer 7. Beta 1, targeted at web designers and developers, was released to the general public on March 5, 2008....
FirefoxSeaMonkey
Seamonkey

Seamonkey may refer to:* Sea-Monkey, a sales trade name for a certain hybrid of brine shrimps* SeaMonkey, a web browser suite. It is the continuation of the Mozilla Application Suite ...
Safari
Safari (web browser)

Safari is a web browser developed by Apple Inc.. First released as a beta on January 7, 2003 on the company's Mac OS X operating system, it became Apple's default browser beginning with Mac OS X v10.3, commonly known as "OS X Panther." Apple has also made Safari the native browser for the iPhone OS....
Konqueror
Konqueror

Konqueror is a web browser, file manager and file viewer designed as a core part of the KDE. It is developed by volunteers and can run on most Unix-like operating systems....
Opera
Opera (web browser)

Opera is a web browser and Internet suite developed by the Opera Software company. Opera handles common Internet-related tasks such as displaying web sites, sending and receiving e-mail messages, managing contacts, IRC online chatting, downloading files via BitTorrent , and reading web feeds....
Windows Vista/2008
Windows XP/2003/Home Server
Windows 2000Planned
Windows Mobile 6
Mac OS 10.4/10.5 PowerPCPlanned
Mac OS 10.4/10.5 IntelPlanned
Linux(Moonlight)PlannedPlanned
[Open]Solaris (Moonlight)
  • Opera
    Opera (web browser)

    Opera is a web browser and Internet suite developed by the Opera Software company. Opera handles common Internet-related tasks such as displaying web sites, sending and receiving e-mail messages, managing contacts, IRC online chatting, downloading files via BitTorrent , and reading web feeds....
     will be officially supported with future builds. Unofficially Silverlight supports Opera already, via a hack.
  • On Linux^, the functionality will be made available via the compatible third-party Moonlight
    Moonlight (runtime)

    Moonlight is a free software and open-source software implementation of the Microsoft Silverlight which was originally developed by Microsoft. Moonlight is currently being developed by the Mono Project....
     runtime. Moonlight will be available for the major Linux
    Linux

    Linux is a generic term referring to Unix-like computer operating systems based on the Linux kernel. Their development is one of the most prominent examples of free and open source software collaboration; typically all the underlying source code can be used, freely modified, and redistributed by anyone under the terms of the GNU GPL license...
     distributions, with support for Firefox, Konqueror
    Konqueror

    Konqueror is a web browser, file manager and file viewer designed as a core part of the KDE. It is developed by volunteers and can run on most Unix-like operating systems....
    , and Opera
    Opera (web browser)

    Opera is a web browser and Internet suite developed by the Opera Software company. Opera handles common Internet-related tasks such as displaying web sites, sending and receiving e-mail messages, managing contacts, IRC online chatting, downloading files via BitTorrent , and reading web feeds....
     browsers, provided it was obtained through Novell
    Novell

    Novell Inc. is a global software corporation based in the United States specializing in enterprise operating systems such as SUSE Linux distributions and Novell NetWare; identity, security and systems management solutions; and collaboration solutions....
    . Miguel de Icaza has expressed an interest in working with developers from other operating systems (BSD, Solaris) and other browsers (Konqueror, WebKit and Opera) to ensure that Moonlight works fine on their systems.
  • Silverlight for Mobile will be used to run Silverlight content on mobile devices. The first CTP for Windows Mobile 6 will be released in 2nd Quarter of 2008. Nokia
    Nokia

    Nokia Corporation is a Finland Multinational corporation communications corporation, headquartered in Keilaniemi, Espoo, a city neighbouring Finland's capital Helsinki....
     has announced plans to make Silverlight for Mobile available for S60
    S60 platform

    The S60 Platform is a platform for mobile phones that runs on Symbian OS. S60 is currently amongst the leading smartphone platforms in the world....
     on Symbian OS
    Symbian OS

    Symbian OS is a proprietary software operating system designed for mobile devices, with associated Library , user interface, frameworks and reference implementations of common tools, developed by Symbian Ltd....
    , as well as for Series 40 devices and Nokia Internet tablets. Silverlight for Mobile will initially support Silverlight 1.0 content.
  • Silverlight requires an x86 processor with SSE
    SSE

    SSE may refer to:In computing:*Senior Software Engineer *Push technology#HTTP Server Push, a technology to push content to web clients...
     support. Supported processors include the Intel Pentium III
    Pentium III

    The Pentium III brand refers to Intel's 32-bit x86 desktop and mobile microprocessors based on the sixth-generation Intel P6 microarchitecture introduced on February 26, 1999....
     and up, and the AMD Athlon XP and up. Some AMD Duron
    Duron

    The AMD Duron was an x86-compatible computer central processing unit manufactured by Advanced Micro Devices. It was released on June 19, 2000 as a low-cost alternative to AMD's own Athlon processor and the Pentium III and Celeron processor lines from rival Intel....
     models are also supported.
  • Additional platforms are being considered as well.


File Formats


Development tools

Silverlight applications can be written in any .NET programming language. As such, any development tools
Integrated development environment

An integrated development environment also known as integrated design environment or integrated debugging environment is a software application that provides comprehensive facilities to computer programmers for software development....
 which can be used with .NET languages can work with Silverlight, provided they can target the Silverlight CoreCLR for hosting the application, instead of the .NET Framework CLR. Microsoft has positioned Microsoft Expression Blend versions 2.0 and 2.5 for designing the UI of Silverlight 1.0 and 2 applications respectively. Visual Studio 2008
Microsoft Visual Studio

Microsoft Visual Studio is an integrated development environment from Microsoft. It can be used to develop Console application and graphical user interface applications along with Windows Forms applications, web sites, web applications, and web services in both native code together with managed code for all platforms supported by Microsoft W...
 can be used to develop and debug Silverlight applications. To create Silverlight projects and let the compiler target CoreCLR, Visual Studio 2008 requires the Silverlight Tools for Visual Studio.

A Silverlight project contains the Silverlight.js and CreateSilverlight.js files which initializes the Silverlight plugin for use in HTML pages, a XAML file for the UI, and code-behind files for the application code. Silverlight applications are debugged in a manner similar to ASP.NET applications. Visual Studio's CLR Remote Cross Platform Debugging feature can be used to debug Silverlight applications running on a different platform as well.

In conjunction with the release of Silverlight 2.0, Eclipse
Eclipse (software)

Eclipse is a multi-language software development environment comprising an Integrated development environment and a plug-in system to extend it....
 was added as a development tool option.

Licensing

An unattributed report claimed that Microsoft aims to release certain parts of Silverlight source code as open source
Open source

Open source is an approach to design, development, and distribution offering practical accessibility to a product's source . Some consider open source as one of various possible design approaches, while others consider it a critical Strategy element of their business operations....
 software, but Sam Ramji, director of platform technology strategy at Microsoft, said the company has no plans to do so. However, the Dynamic Language Runtime
Dynamic Language Runtime

The Dynamic Language Runtime from Microsoft is an ongoing effort to bring a set of services that run on top of the Common Language Runtime and provides language services for several different dynamic languages....
, included with Silverlight, has been made available on Microsoft's CodePlex website using the Microsoft Public License
Shared source

Shared Source is Microsoft's framework for sharing computer program source code with third parties. Microsoft's Shared Source Initiative, launched in May 2007, includes a spectrum of technologies and licenses....
. The source code of the collection of controls included in Silverlight 2 is released under Microsoft Public License
Shared source

Shared Source is Microsoft's framework for sharing computer program source code with third parties. Microsoft's Shared Source Initiative, launched in May 2007, includes a spectrum of technologies and licenses....
, which can be downloaded from .

The fact that Silverlight is proprietary
Proprietary

The word proprietary indicates that a party, or proprietor, exercises private ownership, control or use over an item of property.Terms relating to Proprietary include:...
 is a concern to competition since it may harm the open nature of the World Wide Web
World Wide Web

The World Wide Web is a very large set of interlinked hypertext documents accessed via the Internet. With a Web browser, one can view Web pages that may contain writing, s, videos, and other multimedia and navigate between them using hyperlinks....
. Advocates of free software
Free software

Free Software or software libre 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 minimal restrictions only to ensure that further recipients can also do these things and to prevent consumer-facing hardware...
 are also concerned Silverlight could be another example of Microsoft's Embrace, extend and extinguish
Embrace, extend and extinguish

"Embrace, extend and extinguish," also known as "Embrace, extend, and exterminate," is a phrase that the United States Department of Justice found was used internally by Microsoft to describe their strategy for entering product categories involving widely used standards, extending those standards with Proprietary software capabilities,...
 strategy. It should be noted that Adobe Flash which has a near monopoly is also proprietary.

Mono Moonlight implementation

The Mono
Mono (software)

Mono is a project led by Novell to create an Ecma International standard compliant, .NET Framework-compatible set of tools, including among others a C Sharp compiler and a Common Language Runtime....
 team is currently developing Moonlight
Moonlight (runtime)

Moonlight is a free software and open-source software implementation of the Microsoft Silverlight which was originally developed by Microsoft. Moonlight is currently being developed by the Mono Project....
, a free
Free software

Free Software or software libre 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 minimal restrictions only to ensure that further recipients can also do these things and to prevent consumer-facing hardware...
 and open-source
Open-source software

Open source software is defined as computer software for which the source code and certain other rights normally reserved for copyright holders are provided under a computer software license that meets the Open Source Definition or that is in the public domain....
 implementation of both the Silverlight 1.0 and 2.0 runtime
Runtime

In computer science, runtime or run time describes the operation of a computer program, the duration of its execution, from beginning to termination ....
s.

The project is officially supported by Microsoft
Microsoft

Microsoft Corporation is a multinational corporation computer technology corporation that develops, manufactures, licenses, and supports a wide range of computer software products for computing devices....
 who, under an agreement with Novell
Novell

Novell Inc. is a global software corporation based in the United States specializing in enterprise operating systems such as SUSE Linux distributions and Novell NetWare; identity, security and systems management solutions; and collaboration solutions....
, has made additional specifications, access to the Silverlight Base Class Library
Base Class Library

The Base Class Library is a standard library available to all languages using the .NET Framework. .NET includes the BCL in order to encapsulate a large number of common functions, such as file reading and writing, graphic rendering, database interaction, and XML document manipulation, which makes the programmer's job easier....
 APIs, binary codecs and test cases available to the Mono team, none of which are available to other members of the public.

The 'covenant' under which Novell has been granted this exclusive access also specifies conditions that are incompatible with the licencing
GNU General Public License

The GNU General Public License is a widely used free software license, originally written by Richard Stallman for the GNU project. The GPL is the most popular and well-known example of the type of strong copyleft license that requires derived works to be available under the same copyleft....
 that covers most other free and open source software
Free and open source software

Free and open source software, also F/OSS, FOSS, or FLOSS is software which is liberally software licence to grant the right of users to study, change, and improve its design through the availability of its source code....
. As examples, it specifically requires that the software must have been "obtained directly from Novell or through an Intermediate Recipient" and that it must be "not licensed under GPLv3 or a Similar License". Free software proponents Groklaw
Groklaw

Groklaw is an award-winning website covering legal news of interest to the free and open-source software community. Started as a blog on May 16 2003 by paralegal Pamela Jones at Radio UserLand, it has covered issues such as: the SCO-Linux controversies; the European Union v....
 have criticized the covenant, although Novell, Inc. is enthusiastic.

Silverlight has been criticized for keeping Linux out of their official offering. Even with Microsoft's official support of the Moonlight project, Bruce Chizen, former CEO of Adobe
Adobe Systems

Adobe Systems Incorporated is an United States computer Computer software company headquartered in San Jose, California, USA. The company has historically focused upon the creation of multimedia and creativity software products, with a more-recent foray into rich Internet application software development....
, and maker of direct competitor Flash, has questioned "the commitment of Microsoft to keep the Silverlight platform compatible with other OS than Windows
Microsoft Windows

Microsoft Windows is a series of software operating systems and graphical user interfaces produced by Microsoft. Microsoft first introduced an operating environment named Windows in November 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces ....
". His concerns are based on "examples from history" where Microsoft has launched products with promises of ongoing cross-platform compatibility that no longer apply, such as Internet Explorer for UNIX
Internet Explorer for UNIX

Internet Explorer for UNIX is a Proprietary software graphical user interface web browser that was freely available and produced by Microsoft for use in the X Window System on Solaris or HP-UX....
 and Windows Media Player
Windows Media Player

Windows Media Player is a digital media media player and media library application developed by Microsoft that is used for playing sound reproduction, video and viewing s on personal computers running the Microsoft Windows operating system, as well as on Pocket PC and Windows Mobile-based devices....
.

Relationship to existing Web standards


California and several other U.S. states also have asked a District Judge to extend most of Microsoft's antitrust case
United States v. Microsoft

United States v. Microsoft was a set of consolidated civil actions filed against Microsoft Corporation on May 18, 1998 by the United States Department of Justice and 20 U.S....
 settlement for another five years, citing "a number of concerns, including the fear that Microsoft could use the next version of Windows to 'tilt the playing field' toward Silverlight, its new Adobe Flash
Adobe Flash

Adobe Flash is a multimedia Platform created by Macromedia and currently developed and distributed by Adobe Systems. Since its introduction in 1996, Flash has become a popular method for adding animation and interactivity to web pages; Flash is commonly used to create animation, advertisements, and various web page components, to integrate...
 competitor," says a Seattle Post-Intelligencer
Seattle Post-Intelligencer

The Seattle Post-Intelligencer is one of two daily newspapers in Seattle, Washington, United States, the other being the The Seattle Times....
 article. The final judgement on the motion extended the settlement two years, to November 2009, but for reasons unrelated to Silverlight. . In Windows 7 betas the Silverlight webbrowser plugin is not installed automatically but is an optionally downloadable update through Windows update.

Microsoft has been criticized for not using the Scalable Vector Graphics
Scalable Vector Graphics

Scalable Vector Graphics is a family of specifications of XML-based file format for describing two-dimensional vector graphics, both static and dynamic ....
 standard for Silverlight, which, according to Ryan Paul of Ars Technica
Ars Technica

Ars Technica , Latin for "Art of Technology" is a technology-related website that caters to personal computer enthusiasts, covering technology, science, and video game news along with editorial comment and analysis....
, is consistent with Microsoft's ignoring of open standards
Criticism of Microsoft

Criticism of Microsoft has followed various aspects of its products and business practices. Issues with ease of use, stability, and computer security of the company's software are common targets for critics....
 in other products, as well. However, according to David Betz, a .NET specialist and Microsoft MVP, "While this seems to some to be a valid criticism and a good point to some of the web standards world, it is absolutely groundless and carries no weight." Microsoft would have altered the SVG specification to integrate it with .NET, rather than the reverse. Consequently, he thinks the "choice by Microsoft
Microsoft

Microsoft Corporation is a multinational corporation computer technology corporation that develops, manufactures, licenses, and supports a wide range of computer software products for computing devices....
 to use XAML over SVG, served to retain the SVG standard by not adding proprietary technology [to SVG]".

See also

  • Adobe Flash Player
    Adobe Flash Player

    The Adobe Flash Player is software for creating and viewing animations and movies using computer programs such as a web browser; in common usage, flash lets you put animation and movies on a web site....
  • Adobe AIR
  • Curl Surge RTE
  • JavaFX
    JavaFX

    JavaFX is a software platform for creating and delivering rich Internet applications that can run across wide variety of connected devices. The current release enables building applications for desktop, browser and mobile phones....
  • Rich Internet application
    Rich Internet application

    Rich Internet applications are web applications that have some of the characteristics of Application software, typically delivered by way of an Ajax framework, Proprietary software web browser Plug-in s, advanced javascript compiler technology, or independently via Sandbox es or virtual machines....
  • Windows Live Silverlight Streaming
    Windows Live Silverlight Streaming

    Microsoft Silverlight Streaming by Windows Live is a companion service for Microsoft Silverlight that makes it easier for developers and designers to deliver rich media as part of their Silverlight applications....
  • OpenLaszlo
    OpenLaszlo

    OpenLaszlo is an open source platform for the development and delivery of rich Internet applications. It is released under the Open Source Initiative-certified Common Public License....
     - An open source platform for rich Internet applications. Deploys in Adobe Flash, or as cross browser DHTML as of version 4.


External links