1999-12-09proposal for using iso 11404, f. farance 1 iso 11404 for data models frank farance,...

7
1999-12-09 Proposal for Using ISO 11 404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 [email protected] http://edutool.com

Upload: alexander-carpenter

Post on 27-Mar-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1999-12-09Proposal for Using ISO 11404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 frank@farance.com

1999-12-09 Proposal for Using ISO 11404, F. Farance

1

ISO 11404 for Data Models

Frank Farance, Farance Inc.+1 212 486 4700

[email protected]://edutool.com

Page 2: 1999-12-09Proposal for Using ISO 11404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 frank@farance.com

1999-12-09 Proposal for Using ISO 11404, F. Farance

2

What Is ISO 11404?

• Language Independent Datatypes

• LID is the “pseudo-code” for datatypes

• XML is too low level

• UML is too high level

• LID can bind to XML, SQL, C/C++, Java, JavaScript

Page 3: 1999-12-09Proposal for Using ISO 11404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 frank@farance.com

1999-12-09 Proposal for Using ISO 11404, F. Farance

3

ISO 11404 Can BeUsed For Describing Semantics

Functionality

Conceptual Model

Semantics

Bindings: APIs Bindings: Codings Bindings: Protocols

Encodings:Data Formats

Encodings:Calling Conventions

Encodings: VariousCommunication Layers

IEEE 1484.XInformative Wording

IEEE 1484.XNormative Wording

IEEE 1484.X,IEEE 1484.14 XML

IEEE 1484.14 SDAInformative Wording

IEEE 1484.X,IEEE 1484.14 SDANormative Wording

IEEE 1484.X, 1484.14,And Other Standards

IEEE 1484.15 DCTP, IEEE 1484.16 HTTP

Various Standards

Requirements

Page 4: 1999-12-09Proposal for Using ISO 11404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 frank@farance.com

1999-12-09 Proposal for Using ISO 11404, F. Farance

4

Example of ISO 11404

// LOMClassificationRecord: Description of a characteristic of// the resource by entries in classifications.type LOMClassificationRecord = unordered extendable record(

// Purpose: Characteristics of the resource described// by this classification entry.optional Purpose: LOMLangStringType(128) extendable selecting(

(Language = "en", String = "Discipline"),(Language = "en", String = "Idea"),(Language = "en", String = "Prerequisite"),(Language = "en", String = "Educational Objective"),(Language = "en", String = "Accessibility Restrictions"),(Language = "en", String = "Educational Level"),(Language = "en", String = "Skill Level"),(Language = "en", String = "Security Level"),

),);

Page 5: 1999-12-09Proposal for Using ISO 11404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 frank@farance.com

1999-12-09 Proposal for Using ISO 11404, F. Farance

5

XML Bindings Generated From ISO 11404

• Create a set of transformation rules

• Rules can describe a grammar

• Sample for LOM:– Map all identifiers to tags– Map all LangStrings to:

• Language sets LANG attribute in parent (target)• String sets value in parent (target)

– Prefix (or not) top level elements with LOM

Page 6: 1999-12-09Proposal for Using ISO 11404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 frank@farance.com

1999-12-09 Proposal for Using ISO 11404, F. Farance

6

How Extensions Work [1/2]

– Determining a valid or invalid datatype?– Elements recognized, specified in standard– Elements identified as extensions

• Applications can “ignore” or “process”• Applications describe which actions they take• Also known as implementation-defined behavior

– Elements neither in standard nor identified as extensions

• Implementation-defined (or undefined) behavior

Page 7: 1999-12-09Proposal for Using ISO 11404, F. Farance 1 ISO 11404 for Data Models Frank Farance, Farance Inc. +1 212 486 4700 frank@farance.com

1999-12-09 Proposal for Using ISO 11404, F. Farance

7

How Extensions Work [2/2]

• Extensions are important for future revisions of standard

• Extension “prefix” (specified in bindings)– MIME uses “X-” for prefix– Programming languages use “__” (double

underscore) for prefix