WebDNA
Encyclopedia
WebDNA is a server-side scripting
Server-side scripting
Server-side scripting is a web server technology in which a user's request is verified by running a script directly on the web server to generate dynamic web pages. It is usually used to provide interactive web sites that interface to databases or other data stores. This is different from...

, interpreted language
Interpreted language
Interpreted language is a programming language in which programs are 'indirectly' executed by an interpreter program. This can be contrasted with a compiled language which is converted into machine code and then 'directly' executed by the host CPU...

 containing an optional embedded, ram-resident, proprietary, searchable data structure
Data structure
In computer science, a data structure is a particular way of storing and organizing data in a computer so that it can be used efficiently.Different kinds of data structures are suited to different kinds of applications, and some are highly specialized to specific tasks...

. It has the ability to connect directly to other SQL servers (through an ODBC interface) if desired. Its primary use is in creating dynamic web page
Dynamic web page
A dynamic web page is a kind of web page that has been prepared with fresh information , for each individual viewing. It is not static because it changes with the time , the user , the user interaction , the context A dynamic web page is a kind of web page that has been prepared with fresh...

 applications competing against the very well known and free PHP/mySQL duo. Released in 1995, the name was registered as a trademark in 1998. WebDNA is currently owned by WebDNA Software Corporation whose president is Christophe Billiottet (Paris, France).

Notable features

WebDNA contains a proprietary ram-resident table
Table (database)
In relational databases and flat file databases, a table is a set of data elements that is organized using a model of vertical columns and horizontal rows. A table has a specified number of columns, but can have any number of rows...

 system that has searching and editing capabilities. Though WebDNA contains commands
Command (computing)
In computing, a command is a directive to a computer program acting as an interpreter of some kind, in order to perform a specific task. Most commonly a command is a directive to some kind of command line interface, such as a shell....

 that allow connection with traditional relational database
Relational database
A relational database is a database that conforms to relational model theory. The software used in a relational database is called a relational database management system . Colloquial use of the term "relational database" may refer to the RDBMS software, or the relational database itself...

s, such as through a direct MySQL
MySQL
MySQL officially, but also commonly "My Sequel") is a relational database management system that runs as a server providing multi-user access to a number of databases. It is named after developer Michael Widenius' daughter, My...

 API, it is not required in order to create database driven websites with WebDNA. Join
Join (SQL)
An SQL join clause combines records from two or more tables in a database. It creates a set that can be saved as a table or used as is. A JOIN is a means for combining fields from two tables by using values common to each. ANSI standard SQL specifies four types of JOINs: INNER, OUTER, LEFT, and RIGHT...

-like operations can be accomplished with WebDNA's embedded plain text
Plain text
In computing, plain text is the contents of an ordinary sequential file readable as textual material without much processing, usually opposed to formatted text....

 table system to create a set of tables that relate to each other using key field
Key field
A key field is a field or set of fields of a database table which together form a unique identifier for a database record . The aggregate of these fields is usually referred to simply as "the key". Key fields also define searches...

s.

WebDNA is made up of a syntax that uses square brackets ("[" "]") and the English language. For example, to display today's date on a web page, simply insert "[date]" within the HTML or CSS code where you want the live date to appear; likewise with "[time]". To show some text only to a specific client IP address
IP address
An Internet Protocol address is a numerical label assigned to each device participating in a computer network that uses the Internet Protocol for communication. An IP address serves two principal functions: host or network interface identification and location addressing...

 request, the 'showif' context can be used: [showif [ipaddress]=xxx.xxx.xxx.xxx]Some Text[/showif]. Most WebDNA tags, contexts and commands follow similar conventions.

Terminology

The WebDNA syntax is based on 2 formats:
  • Classic
key names surrounded by square brackets, such as: [showif [tvar]=yes]Yes[/showif].
  • WYSIWYG
XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....

 like syntax, such as: Yes. (better formatting when using WYSIWYG
WYSIWYG
WYSIWYG is an acronym for What You See Is What You Get. The term is used in computing to describe a system in which content displayed onscreen during editing appears in a form closely corresponding to its appearance when printed or displayed as a finished product...

 website editors)


WebDNA instructions are based on 3 types:
  • Tag
single key surrounded by square brackets, such as [ipaddress] (the I.P. Address of a Client (computing)
Client (computing)
A client is an application or system that accesses a service made available by a server. The server is often on another computer system, in which case the client accesses the service by way of a network....

 request)
  • Context
opening tag and closing tag that surrounds what is to be parsed. ie. [Format thousands .3d]7[/Format] (parses to '007')
  • Command
commands are passed in the URL field of a browser.


Parameters can be included in many of the Tags, Contexts or Commands.

History

According to Grant Hulbert, one of the Pacific Coast Software founders and principle architects of WebDNA, WebCatalog (now WebDNA) began as a set of C macros to help accomplish website graphical tasks.

"
Before WebDNA evolved into a general-purpose server-side language, it was a special-purpose server-side language designed to help create web pages that sold stock photography. It had shopping cart features, and a searchable fixed-field database with specialized fields for storing stock photo information. After that, Pacific Coast Software quickly saw the value in creating a web programming language.
"


WebCatalog began its mid-90's public debut on the Macintosh platform. As its name implies, it had an early development focus that allowed a web master or store
administrator to migrate a traditional product catalog to an online catalog.
This was most evident in 1997 and 1998 with its StoreBuilder and WebMerchant products that allowed for a user to quickly build a store front online. The term "WebCatalog" referred to the entire product, where the term "WebDNA" referred to the scripting syntax only.

Around the year 2000, WebCatalog and Pacific Coast Software were purchased by Smith Micro Software, Inc. Smith Micro Software, Inc. then changed the name of WebCatalog to WebDNA, which at that point became a name that referenced all aspects of the product. Starting with the release of WebDNA version 4.0 and ending with version 6.0a, the years 1999 to 2004 were very active years for WebDNA and the scripting language was adopted by many national and international names, including Ben and Jerry's, the Pillsbury Dough Boy Shop, the NCAA Final Four and the Museum of Television and Radio. Also during this time, development of the language gained contemporary tools, such as [function] and [scope], that lend themselves to Modular programming
Modular programming
Modular programming is a software design technique that increases the extent to which software is composed of separate, interchangeable components called modules by breaking down program functions into modules, each of which accomplishes one function and contains everything necessary to accomplish...

 and Structured programming
Structured programming
Structured programming is a programming paradigm aimed on improving the clarity, quality, and development time of a computer program by making extensive use of subroutines, block structures and for and while loops - in contrast to using simple tests and jumps such as the goto statement which could...

.

From 2005 to 2008, for perhaps various reasons including the success of Smith Micro Software with other products, WebDNA users began to lose support from the owners and the language went into decline. WebDNA lost many of its users who then opted for more actively supported solutions. The fate of WebDNA was unknown during these years and it was ultimately the developers of WebDNA who revived the language.

In June 2008, a few WebDNA developers formed together and organized to establish the company, WebDNA Software Corporation (WSC). WSC purchased the intellectual property that is WebDNA, and in 2009, WSC released WebDNA version 6.2 (Cicada
Cicada
A cicada is an insect of the order Hemiptera, suborder Auchenorrhyncha , in the superfamily Cicadoidea, with large eyes wide apart on the head and usually transparent, well-veined wings. There are about 2,500 species of cicada around the world, and many of them remain unclassified...

).
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK