dr' Abonyi Jnos - PowerPoint PPT Presentation

1 / 71
About This Presentation
Title:

dr' Abonyi Jnos

Description:

9/3/09. Adatt rh zak s kiakn z suk. 1. Adatt rh zak s kiakn z suk ... History ... TEAM name='New Jersey Devils' abbrev='NJ' / TEAM name='New York ... – PowerPoint PPT presentation

Number of Views:55
Avg rating:3.0/5.0
Slides: 72
Provided by: janosa
Category:
Tags: abonyi | jnos

less

Transcript and Presenter's Notes

Title: dr' Abonyi Jnos


1
Adattárházak és kiaknázásuk
Korszeru adatelérési eszközök (ODBC, OLE, XML)
  • dr. Abonyi János
  • Veszprémi Egyetem
  • abonyij_at_fmt.vein.hu
  • www.fmt.vein.hu/softcomp/dw

2
Mirol lesz szó?
  • ODBC
  • OLE DB
  • XML

3
History of data access I.
  • In the bad old days, (circa 1984-1991,) if you
    needed a program to access data source specific
    data from a thirdparty data location - whether it
    was an RDBMS, spreadsheet, or legacy system a
    great deal of effort and code was required.
  • For Microsoft Excel, it was possible to buy the
    file format specification and write an extensive
    parsing tool, but it was usually easier to export
    it to some text-based format and re-format it
    manually.
  • Embedded SQL and clunky preprocessors were the
    tools of choice to access early RDBMS servers.

4
History of data access II.
  • Recognizing these problems, the SQL Access Group
    (SAG) was formed in 1989 as an industry
    consortium to promote portability and
    interoperability among DBMS vendors.
  • Microsoft representatives were among the members,
    and the company anticipated the eventual release
    of the SAG standard by shipping the Open Database
    Connectivity API ( ODBC) and tool-set in 1992.
  • ODBC was a major step forward in data
    connectivity, and played a significant role in
    the legitimization of the PC as a client platform
    for enterprise applications.
  • It also fueled the sales of PC-based
    report-writers, rapid application development
    (RAD) environments, and related tools.

5
History of data access III.
  • ODBC has its share of problems, however. As a
    product of SAG, ODBC is tightly bound to the SQL
    language, and therefore to the relational model
    that underlies it. This creates a problem when
    attempting to use ODBC to access hierarchical,
    multi-dimensional (OLAP), or freeform
    (spreadsheets, e-mail) data.
  • The requirement for SQL processing also poses an
    entry barrier for many of the low-end tabular
    data stores.
  • Another problem is the leveling of ODBC
    drivers. The designers of ODBC anticipated that
    not all data-sources would be capable of
    providing the full functionality, so the API
    entries were grouped into Core, Level 1, and
    Level 2 to indicate which features were
    required and which considered optional for
    drivers of various capabilities. Unfortunately,
    since the development of most drivers is outside
    Microsofts control, many use a pickand-choose
    approach to ODBC API support.

6
History of data access IV.
  • Similarly, the many flavors of SQL result in each
    driver having to report its degree of conformance
    to various SQL specifications.
  • The resulting complexity of these issues,
    exacerbated by the changes contained in various
    versions of ODBC, seriously undermines the
    universal nature of the API. In the worst-case
    scenarios, developers are forced to treat each
    DBMS separately just as they did before ODBC
    was available.
  • So, in order to deal with this stack of problems
    (and to address the increasingly important issues
    of Internet integration, multi-threaded
    applications, and other technical issues)
    Microsoft developed the OLE DB specification.

7
What is ODBC ?
  • The Open Database Connectivity (ODBC) standard is
    a common application programming interface for
    accessing data files.
  • ODBC allows you to easily move data back and
    forth between ODBC compliant applications.
  • So, for example, you can easily extract data from
    a Microsoft Excel spreadsheet or Paradox database
    using SAS or SPSS without having to go through
    any tedious translation procedure.
  • With ODBC, all you have to do is specify the
    type of file you are accessing and the data you
    want, and the ODBC driver will do the rest of the
    work.

8
Why Use ODBC?
  • ODBC can be used as a translation engine,
    facilitating the movement of data between
    different applications with dissimilar file
    structures. While most applications have some
    sort of import file command that performs much
    the same task as ODBC in this kind of situation,
    ODBC typically provides a more versatile and in
    some cases easier to use interface for
    transferring data between programs.

9
ODBC Objectives
  • For several years, a working party called the
    SQL-Access Group (SAG), consisting of interested
    hardware and software vendors, worked towards
    defining a common database access method to
    simplify Client-Server computing. Microsoft has
    taken a core set of SAG's output and developed a
    call-level interface called the Open Database
    Connectivity (ODBC) Application Programming
    Interface (API).
  • ODBC defines a low-level set of calls which allow
    client applications and servers applications to
    exchange instructions and share data without
    needing to know anything about each other. It
    applies to any Client-Server operation, whether
    or not the client and server applications are
    resident on the same machine, or on different
    PC's, or even if the server is on a remote
    machine running a different operating system.

10
ODBC is based on SQL
  • ODBC is based on and closely aligned with The
    Open Group standard Structured Query Language
    (SQL) Call-Level Interface. It allows programs to
    use SQL requests that will access databases
    without having to know the proprietary interfaces
    to the databases.
  • ODBC handles the SQL request and converts it into
    a request the individual database system
    understands.

11
History of ODBC
  • ODBC was created by the SQL Access Group and
    first released in September, 1992. Although
    Microsoft Windows was the first to provide an
    ODBC product, versions now exist for UNIX, OS/2,
    and Macintosh platforms as well.
  • In the newer distributed object architecture
    called Common Object Request Broker Architecture
    (CORBA), the Persistent Object Service (POS) is a
    superset of both the Call-Level Interface and
    ODBC.
  • When writing programs in the Java language and
    using the Java Database Connectivity (JDBC)
    application program interface, you can use a
    product that includes a JDBC-ODBC "bridge"
    program to reach ODBC-accessible databases.

12
ODBC Theory of Operation
  • The Open Database Connectivity (ODBC) interface
    allows applications to access data from database
    management systems (DBMS).
  • The interface permits maximum interoperability -
    a single application can access diverse back-end
    database management systems.
  • An application developer can develop, compile,
    and ship an application without targeting a
    specific DBMS product.
  • Users can then add modules called database
    drivers that link the application to their choice
    of database management systems.

13
The ODBC interface defines the following
  • A library of ODBC function calls that allow an
    application to connect to a DBMS, execute SQL
    statements, and retrieve results.
  • A standard way to connect and log on to a DBMS.
  • A standardized representation for data types.

14
The Interface is flexible enabling
  • An application to construct SQL statements at
    compile time or at run time
  • An application to use the same object code to
    access different DBMS products
  • An application to connect to multiple instances
    of DBMS products
  • An application to send and receive data in a
    format convenient to the application the driver
    converts data values to the format of a specific
    DBMS product.

15
ODBC Architecture I.
Client
DBMS
  • Procedural API
  • SQL-centric

16
ODBC Architecture II.
  • ODBC is composed of four main components the
    client application, ODBC driver manager, ODBC
    drivers, and the ODBC data source.
  • The client application in this discussion will
    SAS, and is the computer package that you will be
    using for your data manipulation or analysis.
  • The ODBC driver manager is a program used to
    manage the links between the various applications
    and to configure data transfer settings.
  • The ODBC drivers serve as the link between the
    client and ODBC data, and must be installed for
    each application. These drivers might also be
    composed of a network component that could be
    used to transfer data from a remote server.
  • Finally, an ODBC data source is a user-generated
    configuration of a particular data file created
    using the ODBC driver manager for access by
    client applications.

17
Types of Drivers
  • ODBC defines two types of drivers
  • Single-tier The driver processes both ODBC calls
    and SQL statements.
  • Multiple-tier The driver processes ODBC calls
    and passes SQL statements to the data source.
  • One system can contain both types of
    configurations.

18
Single-Tier Configuration
  • In a single-tier implementation, the database is
    processed directly by the driver. The driver
    processes SQL statements and retrieves
    information from the database.
  • In a single tier driver network environment data
    access software resides on the PC, this implies
    that query resolution intelligence resides on the
    client.

19
Multiple-Tier Configuration I.
  • In a multiple-tier configuration, the driver
    sends SQL requests to a server that processes SQL
    requests.
  • The application, driver, and Driver Manager
    reside on one system, typically called the
    client. The database and the software that
    controls access to the database typically reside
    on another system, typically called the server.
    This implies that query resolution intelligence
    resides on the server.
  • A variant of the multiple-tier configuration is a
    gateway architecture, where the driver passes SQL
    requests to a gateway process. The gateway
    process sends the requests to the data source.
    The gateway in this scenario can be a piece of
    hardware or data access software in the form of a
    low level interface to foreign databases provided
    by the RDBMS vendor.

20
Multiple-Tier Configuration II.
21
Setting Up an ODBC Data Source
  • Once the ODBC drivers are installed on your
    workstation you may have to create an ODBC data
    source which serves as a configuration profile
    for the data files.
  • To check which data sources have already been
    created, use the ODBC driver manager.

22
ODBC driver installation
  • Because ODBC driver installation is independent
    of ODBC data source configuration, we would have
    to click the Drivers... button in the ODBC
    administrator to see a list of the installed
    drivers.

23
Creating an ODBC Data Source
  • There are two types of ODBC data sources -- what
    one could refer to as "generic" and
    "file-specific" data sources.
  • A generic data source is automatically created by
    some programs during the installation stage.
    These types of data sources provide all of the
    information necessary to access a file using
    ODBC, except for the name and location of the
    file.
  • Thus, when using a generic data source, the user
    must specify the drive, path, and filename
    interactively.
  • In contrast, a file-specific data source is a
    much more precise configuration that designates a
    particular file in a particular location as an
    ODBC data source. A file-specific ODBC data
    source is usually created in situations where a
    single file is going to be accessed many times
    because it allows you to refer to the file by the
    assigned name rather than having to select the
    file each time you wish to access it.

24
ODBC Overview
  • Access to relational data only
  • Requires an SQL engine
  • Standard SQL defined
  • PC and Unix data access (VMS?)
  • Mature technology

25
WHAT IS OLE DB?
  • OLE DB is not a product at least in the
    traditional sense.
  • Instead, it is a specification of how data
    consumers should communicate with data providers.
  • The goal of OLE DB is to provide an open,
    extensible standardallowing any software that
    conforms to the specification to communicate via
    a set of common interfaces.
  • OLE DB is built on some of Microsofts key
    strategic technologies, and builds upon the
    heritage of the previous generation of data
    access software.

26
Overview of COM I.
  • Software developers have been talking and writing
    about the software crisis since the late
    1960s. While that is too complex an issue to
    discuss here, in essence it refers to the fact
    that software productivity and quality continues
    to fall further and further behind hardware
    quality and capabilities.
  • One partial solution that has been applied to
    this situation is software component reuse in
    the same way that a computer designer creates a
    system from a set of common parts, software
    developers would like to be able to build a
    system from reusable software components.

27
Overview of COM II.
  • Object-oriented software languages and design
    have contributed to this effort, and defined some
    useful concepts for managing reuse, such as
    encapsulation, polymorphism, and inheritance.
  • Among other benefits, these concepts all serve to
    isolate changes in one piece of software,
    preventing them from affecting other software.
  • COM uses these object-oriented concepts, but
    unlike most other approaches, COM attempts to
    promote software component reuse at the binary
    object level instead of at the code level.
  • This has several benefits, but most importantly,
    it allows a software component to be upgraded or
    replaced transparently to the applications using
    it.

28
Overview of COM III.
  • The primary mechanism in COM for insuring
    consistency across versions is the interface,
  • and the first rule of COM programming is that any
    interface, once published, is immutable.
  • Specifically, the syntax of all methods and their
    arguments must remain the same.
  • In addition, all access to a com object must be
    though the interface methods directly modifying
    an objects data is forbidden (encapsulation.)

29
Overview of COM III.
  • Another key aspect of the interface is that it is
    not tied to a specific object, but can be reused
    (inheritance). This allows the calling program to
    treat all objects that provide a specific
    interface identically (polymorphism).
  • To further leverage this capability, COM provides
    a mechanism for a program to determine which
    interfaces each object supports at execution
    time, eliminating the need for the consumer to
    limit itself to a lowest-common-denominator
    functionality.
  • In addition to addressing the above problems, COM
    was designed with network computing in mind. Such
    programming issues as multi-threaded and parallel
    computing, distributed transaction coordination,
    were addressed and generic solutions devised.

30
HOW DOES OLE DB WORK?
  • From a system perspective, OLE DB is still simply
    database middleware like ODBC, in that it serves
    as a translator between a client and a server.
  • The calling application obtains a COM Interface
    handles and executes the methods of interest.
  • Client and server are sufficiently ambiguous
    terms that OLE DB has introduced the terms
    consumer and provider to clarify the
    relation.
  • A consumer is any software that requests an OLE
    DB interface, while a provider is any software
    that implements one or more OLE DB interfaces.

31
OLE DB vs. ODBC I.
  • Procedural API
  • SQL-centric

ODBC Architecture
Client
DBMS
OLE DB Architecture
Client
DBMS
  • COM classes
  • Direct table manipulation
  • Generic command processing

COM
OLE DB Provider
32
OLE DB vs. ODBC II.
  • OLE DB differs from ODBC in that there is no
    equivalent to the ODBC driver manager. OLE DB
    providers are self sufficient in this sense,
    although multiple providers may cooperate to
    access a single data source.
  • For example, Microsoft distributes a provider
    enumerator (which is itself an OLE DB provider)
    as part of the OLE DB redistributable files. It
    is used to obtain the list of installed
    providers.
  • An important aspect of OLE DB is that instead of
    entirely replacing ODBC, it leverages the
    existing base of ODBC drivers by providing a
    translation provider the OLE DB Provider for
    ODBC Data Sources for those sources.

33
How to develop OLE DB tools?
  • The OLE DB API, like all COM APIs, is technically
    language independent but it is most conveniently
    accessed in C.
  • To make OLE DB technology more accessible to
    languages such as Visual Basic, Microsoft has
    provided an abstraction layer called Active Data
    Objects (ADO).
  • ADO provides most of the power of OLE DB, but
    with less code and a much shallower learning
    curve.

34
ADO Architecture
OLE DB Provider
Client
ADO
ODBC
MSADSQL
  • Scriptable bindings
  • Simplifies OLE DB model
  • Appropriate for e-business applications

35
OLE DB Objects
36
Enumerators
  • Enumerators provide lists of information to the
    consumer.
  • The most common example, the root provider
    supplied by Microsoft searches for installed OLE
    DB providers, including other enumerators, and
    returns their identifying information in a
    rowset.
  • Enumerators are most useful to generic consumers
    those that are designed to connect to arbitrary
    providers selected at run-time.
  • In some cases, however, a data provider will
    include additional enumerators such as when an
    RDBMS manages multiple databases residing on a
    single server.

37
Data Sources
  • Data source objects perform the work required to
    connect to a data source, such as a tabular file
    or a DBMS.
  • They manage connection options make the network
    connection or open the file(s), as appropriate
    and may supply administrative capabilities and
    general information about the data source.
  • All consumers must obtain a data source object.
    Further, they must initialize the data source
    object before it can create a session or perform
    other operations of the data source.

38
Sessions
  • Sessions provide a framework for transaction
    management, which can be handled automatically,
    or explicitly controlled by the consumer.
  • If a data source doesnt support transactions,
    the session object will operate in auto-commit
    mode, where all changes will be saved as they are
    made.
  • Sessions are a prerequisite for creating
    transactions, commands, and most rowsets.
  • They may also provide schema information and the
    ability to create or modify tables and indexes.

39
Transactions
  • Transaction objects are optional, and serve a
    single purpose.
  • They allow the consumer to explicitly control the
    commission or abortion of pending database
    options.
  • Not all providers support transactions, and those
    that do may handle only simple transactions.
  • More sophisticated providers may participate in
    nested or coordinated transaction management.

40
Commands
  • Commands are used to submit statements in SQL (or
    other appropriate language, such as the MDX
    extended SQL syntax for OLAP) to the provider.
  • Unlike ODBC, command support is optional for OLE
    DB providers.
  • Those providers that do have command languages
    may use different dialects, although they must
    report which dialect(s) are supported, and to
    what extent.

41
Rowsets
  • Rowsets are the OLE DB objects that contain the
    data
  • the actual rows and columns, or observations and
    variables if you prefer.
  • rowset is effectively a local buffer for the
    data, although advanced providers support a vast
    array of client and server-side cursors,
    scrolling,bookmarks, etc. through optional
    interfaces.
  • This allows buffer management to be tuned
    effectively by each consumer based on its usage
    pattern and the capabilities of the provider.

42
Errors
  • Errors in OLE DB are simply an extension of the
    error handling objects built into COM.
  • Support for error objects are, sadly, entirely at
    the discretion of the provider often requiring
    the consumer to rely on basic method return codes
    to check for success or failure.
  • However, the better providers can and do provide
    extensive diagnostic messages in the error
    objects.

43
OLE ODB Dependencies
44
Providers
  • All major RDBMS brands have an available OLE DB
    provider, though some are native while others
    rely on middleware solutions.
  • Microsoft SQL Server, Microsoft Access, and
    Oracle providers are available directly from
    Microsoft, while MicroFocus3 sells direct
    providers for Oracle, Sybase, and INFORMIX
  • Non-relational providers are also available, and
    are currently available for various flat file
    formats (such as dBase) and email systems
    including Lotus Notes and Microsoft Exchange.
  • File system providers are available for Microsoft
    Active Directory Services2 (NT, NetWare, and
    LDAP) and C-ISAM/D-ISAM, with VSAM slated for
    release soon.

45
OLAP providers
  • On the OLAP side, providers for the
    multi-dimensional servers from Microsoft, Oracle,
    Red Brick, and Sybase are shipping or in the
    works.
  • The OLE DB for OLAP specification is relatively
    recent, so more providers are anticipated in this
    area over the coming year.
  • SAS Institute itself is developing four
    providers, three relational and one OLAP
  • The SAS/Access Interface to OLE DB has the
    ability to consume data from all of these
    providers, enabling SAS software to serve as a
    central information processing tool for all your
    data, regardless of its origin.

46
SAS Providers
SAS/SHARE Data Provider
SAS/SHARE Server
C ONSUMER
IOM Data Provider
SAS/Integration Technologies Server
SAS Local Data Provider
47
Consumers
  • There are two main categories for OLE DB consumer
    applications those that process data from a
    variety of OLE DB providers, and those that are
    designed to interact with a single provider.
  • The first group generic consumers largely
    consists of shrink-wrap software.
  • The single-source consumers are typically
    proprietary corporate IS applications, and are
    often bound directly to the schema of a
    particular database.
  • Of the shrink-wrap applications, few are
    available now, but Microsoft has announced
    sweeping support in the Microsoft Office 2000
    suite. Microsoft Excel 2000, for example, will be
    able to import data from any OLE DB source, and
    will generate pivot tables linked directly to
    OLAP cubes.
  • Similarly, Microsoft Access will support import
    and view capabilities for OLE DB providers. One
    application that is available now is Crystal
    Reports 7, from Seagate software, which can
    produce reports using data from OLE DB sources.

48
OLAP Consumers
  • OLE DB for OLAP consumers will see some exciting
    developments over the next year. Support
    initiative have been announced by most of the
    leading OLAP companies, including BAAN, Brio,
    Cognos, Hyperion, Knosys, Pilot, and of course
    Microsoft and SAS Institute.
  • Among proprietary consumers, the important news
    is not the applications so much as the
    development tools available to leverage OLE DB.
  • Microsoft Visual Basic and Visual C offer tools
    and Wizards to simplify the development of OLE
    DB-based applications.
  • Sybase has announced OLE DB support in
    PowerBuilder Version 7.
  • There are also a number of web technologies such
    as Microsoft ADO/RDS to use OLE DB technology to
    deploy web solutions.

49
OLE DB Overview
  • Access to relational/non-relational data
  • No SQL required in API
  • No standard SQL defined
  • PC centric
  • Built on top of OLE and COM
  • Newer technology will replace ODBC

50
Conclusion
  • OLE DB is an open, extensible standard that
    shrewdly leverages existing database access
    tools. It is slated to be a key technology in the
    next generation of Windows based software.
  • It is no secret that the industry drive for open,
    collaborative software development is gathering
    momentum driven by distributed, web-based
    technologies.
  • The leaders in 21st century information delivery
    will be those who recognize this opportunity and
    seize it.
  • The goal of the SAS Nashville project is to put
    SAS Institute at the forefront of this trend, and
    the OLE DB providers and consumer are a critical
    component of that effort.

51
What is XML?
  • Web data format standard
  • W3C (World Wide Web Consortium)
  • Separates data from presentation
  • Self describing data format
  • ltMasterRecipegt
  • ltHeadergt
  • ltProductIDgt M101 lt/ProductIDgt
  • lt/Headergt
  • lt/MasterRecipegt
  • ltTagsgt describe data values
  • Tags must match
  • ltProductIDgt ltproductIDgt ltProd_IDgt

52
XML what does it look like?
  • Stuff
  • Delimited by lttagsgt ltyougt ltmakegt ltupgt
  • Said lttagsgt follow certain rules.
  • This is the big deal one can rely on the
    well-formed-ness to build stronger applications

53
XML what does it look like?
  • lt?xml version"1.0" encoding"iso-8859-1" ?gt
  • ltNHLgt
  • ltCONFERENCEgt Eastern
  • ltDIVISIONgt Atlantic
  • ltTEAM name"New Jersey Devils"
    abbrev"NJ" /gt
  • ltTEAM name"New York Islanders"
    abbrev"NYI" /gt
  • lt/DIVISIONgt
  • ltDIVISIONgt Northeast
  • ..
  • lt/NHLgt

54
XML an agreed upon vocabulary
  • Applications agree to interchange information
    using a common vocabulary
  • But way more flexible.
  • Easier to evolve.
  • Applications ignore vocabulary they dont
    understand.

55
DTDs Schemas
  • XML 1.0
  • Document Type Definitions (DTDs)
  • Inherited from SGML (Standard Generalized Markup
    Language)
  • Limitations
  • W3C Schema format to replace DTDs
  • Expected in 2000
  • Overcomes DTD limitations adds new capabilities
  • Microsoft developed proprietary schema format
  • .xdr schema data reduced
  • Expected (hoped?) to use W3C schema format in the
    future

56
XML Schema Usage
  • Define valid elements
  • Define valid hierarchy organization of elements
  • Reduce programming required to validate XML
    documents

XML Processor
XML Processor uses the output of the parser and
displays the XML
XML Schema
XML Document References Schema
Display
or
XML
Data Application
Parser
XML parser validates the XML document using the
referenced schema
XMLDocument
57
XML easier to evolve?
APP 2
APP 1
XML v1
58
XML easier to evolve?
APP 2
APP 1
XML v1 XML v1.1
APP 3
59
External References
  • http//www.w3.org
  • look down the lefthandside for XML
  • http//www.xml.com
  • http//www.xml.org
  • http//www.simonstl.com
  • good stuff in articles/presentations

60
XML for Data Exchange
  • Natural fit for structured data
  • Mainstream technology
  • Overcomes many relational database limitations
  • Text files
  • Low overhead costs and tools
  • Human readable without tools
  • Tools enhance readability
  • Transportable
  • HTTP
  • E-mail
  • Easy to exchange recipe fragments
  • Recipe unit procedure or recipe operation
  • Individual formula items

61
Customized Schemas
Industry Standard Schema
Individual Schemas Based upon Industry Standard
Company
Company
A
B
Vendor Y
Vendor X
Corporate
Corporate
Schema
Schema
Schema
Schema
Schema Mapping Conversion Tools
62
E.g. Batch Control Markup Language
  • BatchML
  • Based on S88.02
  • Basis for corporate vendor specific schemas
  • Data exchange for
  • Master Recipes
  • Batch History
  • Batch Schedules
  • Equipment Definitions

63
E.g. Master Recipe Header
lt?xml version"1.0" encoding"UTF-8"?gt ltMasterReci
pe xmlns"x-schemaMasterRecipeV01.xdr"gt ltHeadergt
ltIDgt PROD100 lt/IDgt ltCreationDategt
2000-09-04T124348 lt/CreationDategt ltVersiongt
4.0 lt/Versiongt ltVersionDategt 2000-10-10T162303
lt/VersionDategt ltVersionAuthorgt Michelle
lt/VersionAuthorgt ltApprovalDategt
2000-10-12T130422 lt/ApprovalDategt ltApprovedBygt
Paul lt/ApprovedBygt ltStatusgt Approvedlt/Statusgt
ltStandardSizegt 100.0lt/StandardSizegt ltMaximumSiz
egt 300.0 lt/MaximumSizegt ltMinimumSizegt 50.0
lt/MinimumSizegt ltEngineeringUnitgt KG
lt/EngineeringUnitgt ltCommentgt PRODUCT X
lt/Commentgt ltDescriptiongt Production of Polymer
X lt/Descriptiongt ltProductNamegt Polymer X
lt/ProductNamegt lt/Headergt lt/MasterRecipegt
64
E.g. Master Recipe XML Schema
lt?xml version "1.0"?gt ltSchema name
"MasterRecipe00-01.xdr" xmlns
"urnschemas-microsoft-comxml-data" xmlnsdt
"urnschemas-microsoft-comdatatypes"gt ltElementT
ype name "MasterRecipe" content "eltOnly"
order "seq"gt ltelement type
"ID"/gt ltelement type "Header minOccurs"0"
maxOccurs"1"/gt ltelement type
"EquipmentRequirement" minOccurs"0"
maxOccurs"1"/gt ltelement type "Formula"
minOccurs"0" maxOccurs"1"/gt ltelement type
"Procedure" minOccurs"0" maxOccurs"1"/gt ltele
ment type "UnitProcedure" minOccurs"0"
maxOccurs""/gt ltelement type
"OtherInformation" minOccurs"0"
maxOccurs""/gt lt/ElementTypegt ltElementType
name "UnitProcedure" content "eltOnly" order
"seq"gt ltelement type "ID"/gt ltelement type
"RPEClass" minOccurs"0" maxOccurs"1"/gt ltel
ement type "InstanceType" minOccurs"0"
maxOccurs"1"/gt ltelement type
"EquipmentProceduralElementID" minOccurs"0
" maxOccurs"1"/gt ltelement type "Header"
minOccurs"0" maxOccurs"1"/gt ltelement type
"EquipmentRequirement" minOccurs"0"
maxOccurs"1"/gt ltelement type "Formula"
minOccurs"0" maxOccurs"1"/gt ltelement type
"Procedure" minOccurs"0" maxOccurs"1"/gt ltele
ment type "Operation" minOccurs"0"
maxOccurs""/gt ltelement type
"OtherInformation" minOccurs"0"
maxOccurs""/gt lt/ElementTypegt
65
XML what's the fuss
  • XML might just be the ASCII text file of the
    new millennium. A universal and accepted way to
    transfer information between computer
    applications
  • Many big initiatives are embracing XML
  • CDISC pharmaceutical submissions
  • most B2B exchanges
  • most DBMS software
  • most ERP software
  • XML at the heart of .NET and Hailstorm

66
(No Transcript)
67
Overview
  • Using ODBC drivers, OLE DB providers and XML
    extends your data reach from the SAS System.

68
Buzz words I.
  • ActiveX A label used to refer to COM-based
    components and technologies, especially those
    related to the internet.
  • ADO Active Data Objects an abstraction layer to
    provide OLE DB connectivity
  • API Application Programming Interface a
    collection of functions or procedures that
    provide a specific software capability.
  • COM The OLE Component Object Model, a specific
    approach to Object-Oriented software development
    developed by Microsoft.
  • Consumer Any software component that utilizes an
    OLE DB interface. OLEDB
  • Driver In ODBC, a software component providing
    access to a specific DBMS or file format.

69
Buzz words II.
  • Encapsulation A protective programming technique
    that prevents external code from modifying the
    contents of data structures internal to an object
    or module.
  • Inheritance A programming technique that
    facilitates the re-use of programming constructs.
    In COM, interface specifications are inherited
    rather than method implementation.
  • IOM Interface Object Model a SAS Nashville
  • initiative to support distributed,
    component-based development.
  • ISV Independent software vendor
  • Interface An immutable collection of methods.
  • MDDB Multi-Dimensional Database
  • Method A function implemented by an object.

70
Buzz words III.
  • Object In COM, a binary construct that provides a
    set of interfaces.
  • ODBC Open Database Connectivity a Microsoft API
    for accessing SQL-based data sources.
  • OLAP On-Line Analytical Processingcommonly
    refers to the consolidated storage and
    multi-dimensional analysis of enterprise data.
  • OLE Originally an acronym for Object Linking and
    Embedding, it is now used simply as a label to
    describe many COM based technologies. (See also
    ActiveX)
  • Polymorphism A programming technique that allows
    disparate object types to be treated
    homogeneously. In COM, inheriting immutable
    interface specifications
  • provides this.

71
Buzz words IV.
  • Provider Any software component that exposes an
  • OLE DB interface. Data providers own or present
    data, while service providers apply an operation
    or transformation
  • RDBMS Relational Database Management System
  • RIO Remote I/O A SAS Nashville project
    initiative for distributed I/O.
  • SQL Originally an acronym for Structured Query
    Language, now a label for the language used to
    retrieve specific data from an RDBMS
Write a Comment
User Comments (0)
About PowerShow.com