API Birds of a Feather, XML - PowerPoint PPT Presentation

About This Presentation
Title:

API Birds of a Feather, XML

Description:

How do we work together on APIs? Commercial developers should provide sources and there should be no cost for ... ADA DEVELOPERS COOPERATIVE LICENSE, www. ... – PowerPoint PPT presentation

Number of Views:223
Avg rating:3.0/5.0
Slides: 18
Provided by: robertc97
Learn more at: http://www.sigada.org
Category:
Tags: api | xml | apis | birds | feather

less

Transcript and Presenter's Notes

Title: API Birds of a Feather, XML


1
API Birds of a Feather, XML
  • Robert C. Leif, Ph.D.
  • Vice President R D, Newport Instruments
    Ada_Med
  • Tel. (619)582-0437
  • Email rleif_at_rleif.com
  • Web www.newportinstruments.com

2
How do we work together on APIs?
  • Commercial developers should provide sources and
    there should be no cost for single and
    educational uses.
  • ADA DEVELOPERS COOPERATIVE LICENSE,
    www.newportinstruments.com
  • Software Developers Cooperative,
    http//www.softdevelcoop.org/
  • http//groups.yahoo.com/group/softdevelcoop/
  • GNU licenses include Other forms of licensing
    will be considered.

3
Which Standard(s)?Requirements
  • Sources and materials available for free
  • On the web
  • No hidden patents or unreasonable royalties.
  • Operating system independent.
  • Must support Windows, Linux, and Macintosh
  • Reasonable design
  • Standards parsimony
  • Create new by reusing old standards.

4
World Wide Web Consortium (W3C)http//www.w3.org/
  • Only reasonable choice
  • XML eXtensible Markup Language
  • Schema Data-Types
  • SVG Scalable Vector Graphics
  • XForms Forms for the Web
  • XSLfo Formatting language
  • SOAP Simple Object Access Protocol

5
The Browser will be the GUI
  • Eliminates duplicate application programming
    interfaces for the operating system and the web.
  • Provides portability between operating systems.
  • Open to all.
  • Excellent opportunity for Ada!

6
W3C Compound Document Formats Ada program
output
  • Combine multiple formats
  • XHTML for hypertext
  • Extensible HyperText Markup Language
  • SVG for graphics
  • Scalable Vector Graphics
  • SMIL
  • Synchronized Multimedia Integration Language
  • XForms for forms on the web

7
XML Schema
  • Ada button In Strong Typing We Trust
  • Best argument for schema vs. DTD.
  • XML schema can and should have Ada semantics.
  • Need tools for bidirectional translation of
    data-types.
  • Goal XML_Io.
  • Provides strongly typed output from Ada programs.
  • Facilitates development of applications that
    include XML data.
  • Permits the use of W3C Designs
  • Ada and Web modes

8
Numbers
  • Create the same numeric types for both.
  • Ecumenical approach use ECMA types.
  • http//www.ecma.ch/
  • Originally, European Computer Manufacturers
    Association
  • Now, ECMA International - European association
    for standardizing information and communication
    systems.

9
Real Types are Primitive
XML Type Source ECMA
float IEEE single- precision 32-bit float32
double IEEE double-precision 64-bit float64
decimal W3C decimal
Minimum of 18 Digits. Pentium uses double extended precision floating point registers. PowerPC uses floating point registers for fixed-point. Minimum of 18 Digits. Pentium uses double extended precision floating point registers. PowerPC uses floating point registers for fixed-point.
10
Integer Types are Derived
Type Derivation Sequence ECMA Min- Inclusive Max- Inclusive
integer -infinity infinity
nonPositiveInteger 0
negativeInteger -1
long Int64 -263 (263) -1
int Int32 -231 (231) -1
short Int16 -215 (215) -1
byte SByte Int8 -27 (27)-1
Derived From decimal fractionDigits 0
11
XML 32 bit Integer Equivalent
  • ltsimpleType name"Int32_Type"gt
  • ltrestriction base"int"gt
  • ltminInclusive value"-2147483648"/gt
  • ltmaxInclusive value"2147483647"/gt
  • lt/restrictiongt
  • lt/simpleTypegt

12
Create Unicode Strings by Addition of fields to
Bounded_String
  • Encapsulated in generic packages,
    Ada.Strings.Bounded. Wide_Bounded
  • Solution
  • Create a generic that instantiates Ada.Strings.
    Wide_Bounded with a generic type.
  • Add a Character_Set_Type etc. to a private tagged
    type.
  • Add a Modified version of all of the methods in
    Ada.Strings.Wide_Bounded
  • Instantiate (Character_Set gt Utf16)

13
XForms 1.0W3C Recommendation 14 October 2003
  • XForms model, instance data, and user interface
  • Separates presentation from content
  • Benefits reuse, strong typing, reduction of
    round-trips to the server, device independence,
    and a reduces the need for scripting.
  • XForms
  • Not a free-standing document type
  • Integrated into XHTML or SVG.
  • Examples from http//www.formsplayer.com/

14
Ada GUI based on SVG XForms
  • Could be based on either CLAW or GNAVI
  • Need thick binding for operating system
    independence
  • Standard Ada implementation based on SVG
    data-types produces output to be executed by
    operating system
  • or
  • outputs SVG
  • XForms can primarily be an SVG application

15
SOAP
  • Interface SOAP with the Ada Distributed Systems
    Annex
  • And/or
  • CORBA replace IDL with XML?

16
Odds Ends
  • A complete description of Ada in XML schema would
    permit the use of an XML based word processor as
    a program editor.
  • The design documentation and the source could be
    connected by hypertext links.
  • To begin this,I Translated Thomas
    WolfsAdaBrowse Document Type Definition (DTD)
    into a Schema.

17
Conclusions Bottom Line
  • Make the Ada and XML schema data-types the same.
  • Treat the XML presentation tools as a new very
    important API for a user interface standard.
  • Base new Ada API designs on XML standards.
  • Combine SOAP with the Ada Distributed Systems
    Annex and/or CORBA
Write a Comment
User Comments (0)
About PowerShow.com