Tech, Oracle, user experience, coffee, design standards, and shameless ranting

Technical drivers for moving to an XML framework

Why XML?

  • XML (and its predecessor SGML) was developed as an answer to the desire for a single source format. XML represents any type of information in a media-neutral format. This enables automation, which speeds delivery, permits enhanced functionality, and reduces costs.
    • XML has the additional virtue of being a standard without competition; virtually every software company has embraced XML and many major software companies are investing heavily in adapting their products to use or support XML.

Hierarchical schemas offer lots of advantages. Classification and object-orientation are useful ways to leverage what we know at a general level to a more specific level. If I know that a cheetah is a mammal, I can infer further information about a cheetah — for example, that it is warm-blooded and that female cheetahs nurse their young — which I don’t need to formalise specifically for the cheetah. I can infer things about cheetahs by virtue of knowing that a cheetah is an instance of a more general class and by knowing some things about the general class, mammal.

A similar principle applies to object orientation programming and XML. Knowing that an element or an attribute has a certain type may give me information, which I otherwise don’t need to formalize explicitly, and it allows me to use algorithmic processes which apply to this type.

This is in fact the big promise of both object orientation and W3C XML Schema. If, instead of writing documentation and processes for each element and attribute (i.e., for each object), we are able to write documentation and process for each type (i.e., each class of objects), and if each of our types is used to describe several elements and attributes, we may hope for gains of productivity.

On the dark side, reusing components is not that natural for developers, and it is not always obvious how to turn existing components into those which can be usefully reused in a particular context, but the benefit of building reusable type libraries is potentially huge in terms of interoperability and reusability; the life of our developers would be so much easier if we had a universal type library to describe a name or an address.

Access controlled by ACL’s (XML documents in the repository), the principals references by an ACL are: Database users, Database roles, Oracle Internet Directory (OID) users or groups. These ACL can be created manually and dropped into the repository, or created via built-in PL/SQL packages.

  • Share/Bookmark

You can follow any responses to this entry through the RSS 2.0 feed.