Does It Fit?Review of the Proposal for OLIF (version 2) DTD
Christian LieskeSAP AG - GBU Application Integration – MultiLingual Technology
SAP AG 2001, Does it fit?, Christian Lieske 2
Introduction
0. Start to create and validate!
1. Foundations Design goals and decisions Suffixes for parameter entities Data category values as XML
2. High-level view Physical entities Example sections Special mechanisms
3. Low-level view
4. Discussion Issues/loose ends Bugs Enhancement/change requests
SAP AG 2001, Does it fit?, Christian Lieske 3
Start to Create and Validate!
The OLIF DTD can already be used to create entries with a structure editor
validate data
SAP AG 2001, Does it fit?, Christian Lieske 4
Foundations
SAP AG 2001, Does it fit?, Christian Lieske 5
Design Goals and Decisions
1. Stay close to the prose description Strive for identifical naming in both description and formalization
2. Provide legible, consistent and clear formalization Model identical state-of-affairs the same way; refrain from surrogate
representations; uniform representation of data categories as elements
3. Support maintenance and customization Modularize overall solution and write extensive documentation
4. Allow easy implementation Refrain from use of very recent technologies (e.g. Xlink and Resource
Description Format)
5. Advance quickly Postpone time-consuming issues (e.g. non-compromising solution to free
order of elements and alternative content)
6. Use flexible representation formalism Work with DTD rather than XML schema
SAP AG 2001, Does it fit?, Christian Lieske 6
Suffixes for Parameter Entities
1. .att for attributes <!ENTITY % creaTool.att "CreaTool CDATA #REQUIRED" >
2. .pcd.mix for PCDATA content models
<!ENTITY % company.pcd.mix "#PCDATA" >
3. .olif.fix for list of mandatory OLIF values<!ENTITY % adminStatus.olif.fix "#PCDATA" >
4. .olif.pending for list of OLIF values pending approval
<!ENTITY % semReading.olif.pending.user.ext "#PCDATA %semReading.user.ext;" >
5. .user.ext for user extensible content models
<!ENTITY % ptOfSpeech.olif.fix.user.ext "#PCDATA %ptOfSpeech.user.ext;" >
As indicated in the examples, suffixes can be concatenated.
SAP AG 2001, Does it fit?, Christian Lieske 7
Data Category Values as XML
Creation and checking of OLIF is facilated by machine-readable representations (XML) of all allowed or recommended values
SAP AG 2001, Does it fit?, Christian Lieske 8
High-level View
SAP AG 2001, Does it fit?, Christian Lieske 9
Physical Entities
The OLIF DTD is spreadover 3 different levels
header resourcesbody
noun, verb, ...
abb, accr, ...
olifShareRV.mod
olif.dtd
olifHeader.mod
olifShareR.modolifBody.mod
olifBodyV.mod
olifHeaderV.mod
Driver
Structure
Values
SAP AG 2001, Does it fit?, Christian Lieske 10
Example Sections – contentInfo
The contentInfo element explicitly states which choices have been made wrt. representation of content (e.g. retention of quotation marks); in addition, it can state default values for certain data categories (DCs)
SAP AG 2001, Does it fit?, Christian Lieske 11
Example Sections - entry
An individual OLIF entry contains 3 data groups, and can be identified by means of different identifiers
SAP AG 2001, Does it fit?, Christian Lieske 12
Example Sections – mono
Monolingual information consists of mandatory key data categories, as well as optional additional monolingual DCs, and additional general DCs
SAP AG 2001, Does it fit?, Christian Lieske 13
Example Sections – monoDC
In order to reflect relationships, the optional additional monolingual data categories have been grouped according to functionality/linguistic level
SAP AG 2001, Does it fit?, Christian Lieske 14
Special Mechanisms
For user extensions, 2 mechanisms exist:
1. DTD customization
<!ENTITY % ptOfSpeech.olif.fix.user.ext "#PCDATA %ptOfSpeech.user.ext;" >
<!ENTITY %ptOfSpeech.user.ext "" >
2. Data category specifications
<!ELEMENT dataCatReg
(inflectionDCS?,
ptOfSpeechDCS?,
subjFieldDCS?,
semReadingDCS?,
semTypeDCS? )
SAP AG 2001, Does it fit?, Christian Lieske 15
Low-level View
SAP AG 2001, Does it fit?, Christian Lieske 16
Low-level View - Header
The header contains general administrative information, and pointers to supplementary information
SAP AG 2001, Does it fit?, Christian Lieske 17
Low-level View – Header Attributes
SAP AG 2001, Does it fit?, Christian Lieske 18
Low-level View – File Description
SAP AG 2001, Does it fit?, Christian Lieske 19
Low-level View – Distributor
SAP AG 2001, Does it fit?, Christian Lieske 20
Low-level View – Owner
SAP AG 2001, Does it fit?, Christian Lieske 21
Low-level View – Data Category Specifiations
SAP AG 2001, Does it fit?, Christian Lieske 22
Low-level View – Choices and Defaults
SAP AG 2001, Does it fit?, Christian Lieske 23
Low-level View – Workflow and Miscellaneous
SAP AG 2001, Does it fit?, Christian Lieske 24
Low-level View – Entries
SAP AG 2001, Does it fit?, Christian Lieske 25
Low-level View – General Data Categories
SAP AG 2001, Does it fit?, Christian Lieske 26
Low-level View – Cross-references
SAP AG 2001, Does it fit?, Christian Lieske 27
Low-level View - Transfer
SAP AG 2001, Does it fit?, Christian Lieske 28
Discussion
1. Issues/Loose Ends Encode language information via xml:lang Promote recommanded values to fixed values Decide on structure for shared resources Decide on structure for workflow information Resource Description Format schema for description data category
specifications
2. Bugs
3. Enhancements/Change Requests