Index

Symbols and Numbers

< > (angle brackets) in BNF notation, 29
:= (colon-equals) in BNF notation, 29
{} (curly braces) in regular set notation, 30
() (parentheses) for empty sequence notation, 36
+ (plus sign)
as AOM particle or property modifier, 56
as AOM property type modifier, 58
for cardinality constraints for arcs, 53
for cardinality constraints in DTDs, 109
? (question mark)
as AOM particle or property modifier, 55
as AOM property type modifier, 58
for cardinality constraints for arcs, 53
for cardinality constraints in DTDs, 109
* (star)
as AOM particle or property modifier, 56
as AOM property type modifier, 59
for cardinality constraints for arcs, 53
for cardinality constraints in DTDs, 109
for powerset operator, 31, 37
for reversed arcs, 65
| (vertical bar)
in BNF notation, 29
in regular set notation, 30
1NF (First Normal Form). See normalization of relational data structures

A

abbreviations for pattern constraining facet (XML Schema), 498
abstract data types
defining abstract master schema using (XML Schema), 204–209
limitations, 35
abstract master schema (XML Schema)
defining using abstract types, 204–209
defining using dangling type definitions, 209–213
defining using substitution groups, 200–204
abstract patterns (Relax NG), 236–240
acrophony, 7
administration, document metaphor’s importance for, 4
aggregation
complex data types for (XML Schema), 141
modeling aggregated items assets or properties in AOM, 73–76
agrarian societies, writing and, 6
album asset
as business object, 260
hierarchical order in, 10
Inside Out XML document, 254–257
Köln Concert XML document, 256–257
L2S and, 81
overview, 76
sequential order in, 9
album business object
with cross-field constraints (Relax NG), 332–333
with cross-field constraints (XML Schema), 327–332, 333–335
for jazz knowledge base (Relax NG), 308–311
for jazz knowledge base (XML Schema), 277–280, 281
album database, 401–415
converting table to 1NF (flattening), 405–406
defining the target format, 402–403
Integrity Rules for cardinality constraints, 410
introducing key relationships, 406–410
keys, 406–407
overview of normalization process, 401–402
preserving sequential order, 410–414
recomposing original document nodes, 414–415
repeating elements, 410
schema to be normalized, 403–405
album schema normalization. See album database
album_type grammar (Relax NG), 297
algebra
for regular expressions, 30–31, 32
for regular types, 37–38
relational, 398–401
ALGOL, 60, 29
all connector (XML Schema), 144–146
alphabets
for formal grammars, 27
for grammar generating currency amounts, 27
for HRGs, 32
regular sets and, 30, 31
alter table command (SQL), 418
angle brackets < > in BNF notation, 29
annotation clause (XML Schema), 195–196
annotations
of AOM assets, 51
of AOM models, 67
footnotes, 12
help texts, 12
margins and nonlinear reading, 12
in Relax NG, 224–225
sidebars, 12
in XML Schema, 195–196
ANY terminal symbol in DTDs, 108
any wildcards (XML Schema)
declaring, 168, 182
namespaces and, 182–183
open content model and, 465–466
processing methods for, 182
anyAttribute wildcards (XML Schema)
declaring, 168, 182
namespaces and, 182–183
open content model and, 465–466
processing methods for, 182
anyName name class (Relax NG), 243–246
anyType built-in data type (XML Schema)
for empty elements, 157–158
as generic complex type, 142, 201
substitution groups and, 201
anyURI primitive data type (XML Schema)
mapping onto OO types, 376
overview, 126
SQL equivalent function, 423
anyXhtml grammar (Relax NG), 298–299
AOM (Asset Oriented Modeling), 48–70
arcs, 52–53
assets, 48–52
basics, 48–50
clusters, 53, 54
constraints, 51, 62
differentiation from other modeling methods, 48
ERM entities and relationships and, 48–50
inheritance, 60–61
Level 2 Structures (L2S), 62–66
main features, 68–70
merging rules, 68
for model-driven schema mediation, 486–487
models, 66–68
namespaces, 66, 67, 68
properties, 53–57
reasons for using, 48
type expressions, 58
types, 57–60
Web site, 48, 68
XML Information Set modeled in, 91, 94
XPath for constraint formulation in, 323, 338–341 See also specific components
Apache’s Jakarta project, 341
appinfo element (XML Schema), 195–196
arcs (AOM)
assets connected by, 52
cardinality constraints for, 52–53, 65
clusters, 53, 54
constraints across assets using, 62
key specification, 52
overview, 52–53
range, 52
RDF arcs and, 48
reversal for identifying assets, 65
role name, 52
AroUML CASE tool, 337
“As We May Think, ”, 13
assert clause (Schematron), 352–353
Asset Oriented Modeling. See AOM (Asset Oriented Modeling)
assets (AOM)
annotations, 51
completely typed example, 59
constraints across, 62
constraints between properties, 51, 62
definition schema, 50–51
entities and relationships as, 48–50
identifying assets of L2S, 64–65
keys, 51
L2S grouping of, 62–63
labels, 50–51
merging, 68
modeling aggregated items as, 73–76
modeling nouns and verbs as, 73
name, 51, 52
normalization requirements for, 76–77
operations, 51
overview, 48–52
in PNF, 78
properties of, 51
properties vs., 73–74
RDF nodes and, 48
scope, 51
associative operations, 36
Astarita, Glenn
critic XML document for, 257
review XML document for, 257
asterisk. See star (*)
ATTLIST rules in DTDs, 109–110
attribute groups (XML Schema), 186
attribute type property of attributes (XML), 96
attributeFormDefault specification (XML Schema), 180–181
attributes (relational database), 397
attributes (Relax NG)
defining alternatives, 219
generic (wildcards), 243–244
interleaving, 222
merging attribute groups, 235–236
namespaces and, 241
overview, 216–217
attributes (XML)
built-in primitive types, 110–111
canonical form, 104
definition in DTDs, 109–111
example, 100
information item (XML Information Set), 92, 96, 100
normalization of values, 102
properties of information item, 96
property of elements (XML), 95
attributes (XML Schema)
adding to simple type element, 455–456
attribute groups, 186
default values, 150
defining, 159–160
DTD equivalent, 159
fixed values, 150
global, 161–162
qualified names for, 180–182
redefining, 193
automatic code generation, OO environments and, 392–393
axioms in algebra for regular expressions, 32
Ayler, Albert, XML document for, 252–253

B

Backus-Naur-Form (BNF), 29–30
bags, 11–12
band asset
deletion of, 77, 78
overview, 76
band business object (XML Schema), 280–282, 284
base URI property (XML)
of document node, 95
of elements, 96
of processing instructions, 97
base64Binary primitive data type (XML Schema)
OO languages and, 374
overview, 126
SQL binary types and, 422
behavior of objects
overview, 368
type hierarchies based on, 369–370
belongsTo asset
L2S and, 84
overview, 74–75
belongsTo_type grammar (Relax NG), 297–298
binding between XML and OO structures
phases during creation, 367
phases when running the application, 367
products for, 367
Bley, Carla, 10
block attribute (XML Schema), 453
BNF (Backus-Naur-Form), 29–30
bookshop example
combining model with jazz knowledge base model, 472–475
completed AOM model for, 68, 69
L2S structures, 64, 65–66
simple AOM model for, 49–50
boolean primitive data type (XML Schema)
mapping onto OO types, 374
overview, 122
SQL BOOLEAN type and, 422
Boolean set operators, HRGs and, 34
bounded fundamental facet (XML Schema), 121
Breeze XML Studio, 367
built-in data types (XML Schema)
constructed types, 127, 131–136
hierarchy of, 136
primitive types, 121–126
built-in primitive types (XML), 110–111
Bush, Vannevar, 13
business documents
advantages as schema boundaries, 258, 260
defined, 258, 260
L2S representation of, 63
Level 1 Structure as, 260
metaphor’s importance, 4
business objects
album (Relax NG), 308–311
album (XML Schema), 277–280, 281
band (XML Schema), 280–282, 284
clusters in (Relax NG), 314–316
clusters in (XML Schema), 284–287
critic (Relax NG), 316–317
critic (XML Schema), 260, 287, 289
decentralized change management and, 488–489
implementing for jazz knowledge base (XML Schema), 271–277
jazzMusician (Relax NG), 304–308
jazzMusician (XML Schema), 271–277
L1S representation for jazz knowledge base (XML Schema), 260
business objects
L2S representation (AOM), 63
multiple display labels and (Relax NG), 311–313
navigation and implementation of, 320–321
project (Relax NG), 311–313
project (XML Schema), 280, 282–284
review (Relax NG), 314–316
review (XML Schema), 284–287, 288
style (Relax NG), 317–318
style (XML Schema), 289–290
substitution groups for (XML Schema), 280–284
byte built-in constructed data type (XML Schema)
mapping onto OO types, 374–375
overview, 135

C

canonical form (XML), 101–105
for attributes, 104
for comments, 105
for elements, 104
for processing instructions, 105
for removal of redundant nodes, 103
for resolved references, 102–103
for text, 101–102
W3C recommendation, 101
for whitespace, 102
canonical representations (XML Schema)
of built-in primitive data types, 121–126
lexical representations vs., 120
“Canonical XML” recommendation (W3C), 101
cardinality constraints
arc reversal and, 65
for arcs (AOM), 52–53
for complex data types (XML Schema), 149–150, 157
cross-document, 336
DTDs and, 109, 115, 149, 150
making narrower, avoiding, 464
mapping XML Schema hierarchies onto OO constructs and, 377–380
Relax NG, 222–223
on XML Schema particles, 139, 143, 149–150
cardinality fundamental facet (XML Schema), 121
Cartesian product operation
in relational algebra, 398–399
in SQL queries, 416
cascading actions (SQL), 431
CASE tools, 337
Castor, 367
cave paintings, as documents, 7
CD schema file, 455–456
CDATA primitive attribute type (XML), 110
CDATA sections (XML), canonical form and, 102
CD_priceWithCurrency schema file, 456
centralized change management, decentralized vs., 487–488
chameleon schema components
Relax NG, 242–243
for schema evolution (XML Schema), 446, 447–450
XML Schema, 197–199
character code property of characters (XML), 98
character encoding scheme property of document node (XML), 95
characters (XML)
canonical form for text, 101–102
example, 100
information item (XML Information Set), 87–89, 92, 100
metacharacters, 495
properties, 97–98
Chen, Peter, 44, 47
child nodes (XML Schema), appending to nested structures, 457–458
children property (XML)
of document node, 93
of DTD information item, 98
of elements, 95
Chinese script, 6–7
choice
mapping XML Schema choice groups onto OO structures, 384–385
need for schemata and, 23–24
nondeterminism and, 465
redefinition to allow, 461–464
translating XML Schema into SQL, 428–430
<choice> clause (Relax NG)
alternatives enclosed in, 217–219
for combining name classes, 244
for enumerations, 226–227
merging grammars and, 234–235
for union type, 228
choice connector (XML Schema)
| connector in DTD and, 146
foreign keys for choice groups, 174
mapping choice groups onto OO structures, 384–385
nesting, 147–148
nondeterminism and, 465
overview, 146–147
redefinition for, 461–464
translating into SQL, 428–430
Chomsky, Noam, 26
Clark, James, 215
classes (OO languages)
hierarchies, 369
instances, 369
overview, 369
visibility, 394
classic data types, 35
clustered inheritance (AOM), 60, 61
clusters
AOM, 53, 54
business objects and (Relax NG), 314–316
business objects and (XML Schema), 284–287
Codd, E. F., 50
collaboration asset
L2S and, 81
overview, 76
XML document for, 253–254
colon-equals (:=) in BNF notation, 29
combinedCD virtual document type, 479–480
combining diverse schemata, 472–487
combining document instance sets, 475–479
embedded queries, 480–486
model fusion, 472–475
model-driven schema mediation, 486–487
problem statement, 472
schema-driven view definition, 479–480
combining name classes (Relax NG), 244–246
comments (XML)
canonical form, 105
information item (XML Information Set), 98
normalization, 105
commutative operations, 36
compactness of AOM, 68–69
completeness
of asset types, 77
conceptual modeling principle of, 44
complex content (XML Schema)
definitions, 153–156
model, 142
complex data types (XML Schema)
aggregation using, 141
attributes, 159–160
cardinality constraints, 149–150, 157, 377–380
complex content, 153–156
constraints for restricting, 157
content models for, 142
described, 139
deterministic, 176–178
empty elements, 156–158
global attributes, 161–162
global elements, 161–165, 386–387
global types, 160–161, 387–388
local types, 160–161
mapping onto OO constructs, 377–387
mapping onto relational structures, 424–430
mixed content, 150–152
model groups, 143–148
nullability, 169–170
recursive structures using global elements, 162–165
recursive structures using global types, 165–168
redefining, 192
for root element, 139
simple content, 152–153
type definition hierarchies, 156
wildcards, 168–169
xs:anyType as generic type for, 143
complexType declaration (XML Schema)
overview, 141
type libraries and, 261 See also complex data types (XML Schema)
composite keys of assets (AOM), 51
concatenation operation
for regular expressions, 36
for regular sets, 30
conceptual modeling, 41–47
ad-hoc business collaborations and, 47
benefits, 42–43
communication as purpose of, 43
constraints in, 327–341, 391–392
enterprise software development and, 42, 47
Entity Relationship Diagrams, 44–46
guiding principles, 44
implementation neutrality of, 42–43
IT trends and, 43
iterative development cycles and, 47
for jazz knowledge base, Draft 1, 73, 75
for jazz knowledge base, Draft 2, 78–79
for jazz knowledge base, Draft, 3, 81, 82
for jazz knowledge base, Draft, 4, 82, 83
for jazz knowledge base, Draft, 5, 84–85
for jazz knowledge base, final draft, 84, 86, 259
for jazz knowledge base, with added constraints, 339
model fusion, 472–475
model-driven schema mediation, 486–487
reality of, 47
roundtrip engineering for, 47
conceptualization, conceptual modeling principle of, 44
connectors for model group construction (XML Schema), 143–148
constraining facets (XML Schema)
of built-in primitive data types, 122–126
defined, 121
implementing in OO languages, 390–391
OO languages and, 376
for restricted data types, 129–131
SQL type parameters and, 423–424
constraints
in ALGOL, 60, 29
in AOM, 51, 62
in conceptual models, 327–341, 391–392
cross-document, 335–337
cross-field, 330–335
cross-reference, 29, 327–330
data types as, 34
on data types (XML Schema), 157, 327
duration (Schematron), 354–355
duration (XSLT), 344–346
Element Declarations Consistent (XML Schema), 178
formal semantics and, 324–325
hard-coded, 323, 341–344
on identifying assets, 64–65, 82
language for AOM models, 67
on multiple values, 325–326
OO environments and, 390–393
relational environments and, 430–431
Schematron for validating, 348–360
semantic vs. syntactical, 14, 23
soft-coded, 323, 344–348
in SQL, 430–431
structural or syntactical, 14
uniqueness, 327
wildcards and (XML Schema), 182
in XML Schema, 157, 327–330
XPath for, 323, 338–341
XSLT for validating, 344–348 See also cardinality constraints; Schematron
constructed data types (XML Schema)
built-in types, 127, 131–136
extended by list, 127–128, 376
extended by union, 127, 137–138, 376
hierarchy of built-in data types, 136
mapping onto OO types, 374–376
overview, 127
restricted, 127, 128–131
content models
context-sensitive, 33–34
deterministic vs. nondeterministic, 40, 176–178
open, for schema evolution, 465–467
content property (XML)
of comments, 98
of processing instructions, 97
context expressions (AOM), 62
context for Relax NG elements, 216
context-free grammars
Backus-Naur-Form (BNF), 29–30
defined, 28
context-sensitive content models, HRGs for defining, 33–34
context-sensitive elements, DTDs and, 115
converters (Relax NG), 248
corporate environments. See large environments
correspondence, conceptual modeling principle of, 44
Cratylus, 26
create command (SQL), 418
create type command (SQL-99), 420
critic asset
as business object, 260
is_a relationship resolution, 81
overview, 76
XML document for Astarita, 257
critic business object
Relax NG, 316–317
XML Schema, 260, 287, 289
critic_type complex type (XML Schema), derivation of, 264–265
critic_type grammar (Relax NG), 295–296
cross-document constraints, 335–337
cardinality constraints, 336
general constraints, 336
referential integrity constraints, 335
Schematron for, 355–356
uniqueness constraints, 335
validating, 336–337
XSLT for, 346–348
cross-field constraints
album schema and (XML Schema), 327–332, 333–335
for album schema (Relax NG), 332–333
beyond XML Schema, 330–335
cross-references
ALGOL 60 variables and, 29
BNF and cross-reference constraints, 29
checking XML Schema cross-references in OO languages, 391
constraints, 29, 327–330
DTDs and, 111, 115
grammars and, 29–30
hypertext development and, 13
internal vs. between documents, 13
for jazz knowledge base (XML Schema), 277–280
as nonlinear ordering, 13
cuneiform writing, 6, 9, 11
curly braces ({}) in regular set notation, 30
customizing patterns (Relax NG), 234–236

D

dangling type definitions (XML Schema)
defining abstract master schema using, 209–213
schema evolution and, 446
<data> clause (Relax NG), 226
data models
enterprise, 471
grammar-driven, 492
OO implementations (XML), 366–367
relational, 397
Relax NG, 216 See also XML Information Set
data type substitution. See substitution groups (XML Schema)
data types
abstract, 35
of AOM properties, 54–55, 57–60
classic, 35
constraints, 34, 156, 327
defining with SQL-99, 420
DTD limitations, 115
hierarchy based on behavior (OO languages), 369–370
hierarchy based on syntax (OO languages), 370
hierarchy in XML Schema, 38–39, 156
hierarchy of built-in data types (XML Schema), 136
inheritance in XML Schema, 262–265
primitive types supported by DTDs, 110–111
regular, 34–40
as regular expressions, 35
Relax NG, 226–228
simple data types (XML Schema), 120–139
type expressions (AOM), 58
user-defined, 115
XML Schema vs. DTD, 119
data-centric content, document-centric content vs., 14
date primitive data type (XML Schema), 124
dateTime primitive data type (XML Schema)
OO languages and, 375–376
overview, 124
SQL types and, 423
decentralized change management
centralized change management vs., 487–488
of document instances, 488
of document schemata, 488–489
decimal primitive data type (XML Schema)
mapping onto OO types, 374–375
overview, 122
SQL DECIMAL type and, 422
declaration base URI property (XML)
of unexpanded entity reference, 97
of unparsed entity, 99
decomposition, conceptual modeling principle of, 44
defaults
schema namespace (XML Schema), 183–184
type system for properties (AOM), 57
values, cautions regarding (XML Schema), 464–465
values for attributes (XML Schema), 150
values (Relax NG), 225
DeJohnette, Jack
in Keith Jarrett Trio, 253–254
XML document for, 251–252
delete command (SQL), 418, 419
derived data types (XML Schema), 446–454
block attribute and, 453
chameleon schema components, 446, 447–450
creating derived schemata, 450–451
final attribute and, 446, 453
fundamental facets and, 120
inhibiting change form, 453
schema-conservative evolution techniques, 446
substitution groups for schema evolution, 446, 451–453, 454 See also constructed data types (XML Schema)
derived schemata, 450–451
description_type grammar (Relax NG), 298
deterministic content models, nondeterministic vs., 40, 176–178
deterministic regular expressions, 39
deterministic types
defined, 39
regular types, 39–40
in XML Schema, 176–178
diagnostic section (Schematron), 353
diagnostics attribute (Schematron), 353
difference operation in relational algebra, 398
digital documents, 8
DOCTYPE declaration
referencing external subset of DTD, 106, 107
referencing internal subset of DTD, 106–107
SYSTEM identifier, 106
document element property of document node (XML), 93
document instances
combining document instance sets, 475–479
decentralized change management of, 488
DTDs and, 106–107
formal languages and, 14–15
generators for (Relax NG), 248
namespaces as connection with schemata, 180, 181
overriding types (XML Schema), 186–188
document nodes (XML)
example, 100
information item (XML Information Set), 92, 93, 95, 100
properties, 93, 95
Document Object Model (DOM), 341, 366
“Document Object Model (DOM) Level 3 XPath Specification, ”, 341
Document Schema Definition Language (DSDL), 362
document schemata, 14–26
choices in, 23–24
composition with XML Schema, 190–196
decentralized change management of, 488–489
document types defined by, 14
DTD example, 15–17
DTDs vs. XML Schema, 106
equivalent definitions, 14
recursion in, 24–26
Relax NG example, 20–23
XML Schema example, 17–20 See also schema evolution
Document Type Definition. See DTD (Document Type Definition)
document types
document schemata defining, 14
regular types, 34–40
XML Schema constructor for, 34
documentation element (XML Schema), 195
document-centric content
data-centric content vs., 14
object-oriented concepts vs., 368
documents
defined, 8
document-centric vs. data-centric content, 14
early forms of, 6–8
linear order in, 8–10
metaphor’s pervasive importance, 4
nonlinear order in, 11–13
nontangible, 8
scripture, 6–7 See also document instances
DOM (Document Object Model), 341, 366
domain constraints (SQL), 430–431
double primitive data type (XML Schema)
mapping onto OO types, 375
overview, 123
SQL FLOAT type and, 422–423
drop table command (SQL), 418
DSDL (Document Schema Definition Language), 362
DTD (Document Type Definition), 105–115
attributes, 109–111
cardinality constraints and, 109, 115, 149, 150
context-sensitive content models and, 34
cross-references, 111
deficiencies, 114–115, 170
deterministic DTDs, 40
document composition, 112
document instances and, 106–107
DTD-aware parsers and the XML Information Set, 91, 93
elements, 107–109
extension mechanisms, 111–112
external subset, 106, 107
information item (XML Information Set), 92, 98
internal subset, 106–107
introduction of, 15
model groups, 109
non-terminal symbols and, 34, 108, 109
overview, 105–106
parameter entities in, 113–114
purchase order document schema example, 15–17
recursion example, 24–25
regular expressions in, 31
regular grammars vs., 108
Relax NG vs., 23, 246, 360–361
schema composition and reuse mechanisms, 113–114
Schematron vs., 360–361
terminal symbols, 108
translation into XML Schema, 195
user-defined entities, 112
XML processing model and, 360–361
XML Schema vs., 19, 106, 118–119, 170, 360–361
DTD equivalents for Relax NG
cardinality constraints, 223
defining alternatives, 218–219
empty elements, 223
enumerations, 227
interleaving, 222
named patterns, 230
recursive structures, 231
DTD equivalents for XML Schema
attributes, 159
cardinality constraints, 150
element clause, 142
empty elements, 158, 159
mixed content, 151
model groups, 147, 148
recursive structures, 162
duration constraint
Schematron for, 354–355
XSLT for, 344–346
duration primitive data type (XML Schema)
OO languages and, 375–376
overview, 123
SQL types and, 423
XML Schema declaration for, 138–139
dynamic marshaling, 389–390

E

Egyptian hieroglyphs, 7
el ement clause (XML Schema)
default values in, 150
DTD equivalent, 142
fixed values in, 150
local type definition with, 142
name attribute, 141
overview, 141–143
type attribute, 141
element content whitespace property of characters (XML), 98
Element Declarations Consistent constraint (XML Schema), 178
elementFormDefault specification (XML Schema), 180–182
elements (Relax NG)
defining alternatives, 217–219
empty, 223–224
generic (wildcards), 243–246
interleaving, 219–222
overview, 216–217
elements (XML)
canonical form, 104
definition in DTDs, 107–108
example, 100
information item (XML Information Set), 92, 95–96, 100
NOTATION attribute type as extension mechanism, 111–112
properties, 95–96
elements (XML Schema)
adding an attribute to a simple type element, 455–456
complex type, 119
defining, 141–143
document instances overriding types, 186–188
empty, , 156–158
hierarchy of definitions, 139
inserting at an arbitrary position, 459–461
mapping global and local elements onto OO structures, 386–387
nested definitions for, 118, 119
nillable, 169–170
protecting from substitution groups, 189–190
qualified names for, 180–182
substitution groups for, 188–189
translating hierarchies into Java, 377–381
translating hierarchies into relational schema, 424–426
embedded XQuery fragments, 480–486
<empty>/ clause (Relax NG), 223–224
empty elements
Relax NG, 223–224
XML Schema, 156–158
empty patterns (Relax NG), 236
empty sequence notation, 36
empty set (Relax NG), 224
EMPTY terminal symbol in DTDs, 108
encapsulation of objects, 367–368
Enhydra’s Zeus, 367
enterprise data models, 471. See also large environments
enterprise software development, conceptual modeling and, 42, 47
entities
as AOM assets, 48–50
parameter entities in DTDs, 113–114
unexpanded entity reference (XML), 93, 97
unparsed (XML), 93, 95, 98–99
user-defined (XML), 112
ENTITIES built-in constructed data type (XML Schema), 133
ENTITIES primitive attribute type (XML), 110
ENTITY built-in constructed data type (XML Schema), 133
ENTITY primitive attribute type (XML)
overview, 110
for user-defined entities, 112
Entity Relationship Diagrams
purchase order example, 44–46
relational databases and, 43
Entity Relationship Modeling. See ERM (Entity Relationship Modeling)
enumeration constraining facet (XML Schema), described, 130
enumerations in Relax NG, 226–227
equal fundamental facet (XML Schema), 121
equivalent document schema definitions, 14
ERM (Entity Relationship Modeling)
AOM vs., 48–50
development of, 44
dialects, 46
purchase order example, 44–46
Escalator Over the Hill, 10
escape sequences for metacharacters, 496
evolution of schemata. See schema evolution
<except> clause (Relax NG), combining name classes with, 244–246
except operator (SQL), 417
Experanto, 444
expressiveness of AOM, 68
EXSLT, 344
extension by list method for constructed data types (XML Schema)
mapping to OO types and, 376
overview, 127–128
extension by union method. See union data types (XML Schema)

F

Fallside, David C., 117
families of schemata. See schema families (XML Schema)
field element (XML Schema), 171, 172
final attribute (XML Schema), 189–190, 446, 453
Finkelstein, Clive, 46
First Normal Form (1NF). See normalization of relational data structures
#FIXED primitive attribute type (XML), 111
fixed values
cautions regarding (XML Schema), 464–465
Relax NG, 225–226
XML Schema, 150
float primitive data type (XML Schema)
mapping onto OO types, 375
overview, 122
SQL REAL type and, 422–423
footnotes, 12
foreign key integrity constraint (SQL), 418
foreign keys
defining in SQL, 418
OO languages and, 393–394
of relational databases, 397
XML Schema, 173–176
Forest-Regular Grammars. See HRGs (Hedge-Regular Grammars)
formalization, conceptual modeling principle of, 44
fractionDigits constraining facet (XML Schema)
described, 131
implementing in OO languages, 390
Free Jazz style, XML document for, 253
from clause (SQL), 416, 418
fundamental facets (XML Schema)
defined, 120
list of, 121
fxp parser, regular types and, 34

G

gDay primitive data type (XML Schema), 125
general assertions (SQL), 431
generative rules for formal grammars
BNF, 29
currency amount generation example, 27
defined, 27
generators
automatic code, OO environments and, 392–393
for document instances (Relax NG), 248
generic elements and attributes (Relax NG). See name classes (Relax NG)
generic types
overview, 39
xs:anyType (XML Schema), 142, 157–158, 201
global attributes (XML Schema), 161–162
global elements (XML Schema)
global types vs., 184–185
global types with, 185
mapping onto OO structures, 386–387
overview, 161–162
recursive structures using, 162–165, 185
substitution and, 185
global types (XML Schema)
global elements vs., 184–185
global elements with, 185
mapping onto OO structures, 387–388
overview, 160–161
recursive structures and, 185
substitution and, 185
gMonth primitive data type (XML Schema), 125
gMonthDay primitive data type (XML Schema), 125
government environments. See large environments
grammars
alphabet for, 27
Backus-Naur-Form (BNF), 29–30
context-free, 28
cross-reference constraints and, 29–30
example for generating currency amounts, 27–28
generative rules for, 27
grammar-driven data models, 492
history of grammatical analysis, 26
HRGs (Hedge-Regular Grammars), 31–34
mathematical definition, 27
non-terminal symbols for, 27
parser construction from, 28
as production systems, 27
regular expressions and, 30–31
start symbol for, 27
tree-regular, 33
grammars (Relax NG)
album_type, 297
anyXhtml, 298–299
belongsTo_type, 297–298
critic_type, 295–296
description_type, 298
empty patterns and, 236
generating Java source code from, 248
influence_type, 299
jamSession_type, 299–300
jazzMusician_type, 294–295
magazine_type, 300
merging external grammars, 233
named patterns and, 229–233
nested, 231–233
overriding named patterns, 234
person_type, 292–294
plays_type, 300–301
produces_type, 301
project_type, 301–302
purchase order example, 20–23
recursive structures using, 231
sample_type, 302–303
style_type, 303
track_type, 303–304
Greek script, 7
group by clause (SQL), 417
<group> clause (Relax NG), 217–218
groups (XML Schema)
overview, 185–186
redefining, 193
gYear primitive data type (XML Schema), 125
gYearMonth primitive data type (XML Schema), 124

H

hard-coded constraints, 323, 341–344
has, conceptual model in AOM and, 73
Haskell, regular types exploited by, 34–35
HaXml libraries, regular types and, 34
head element (XML Schema) defining as global and abstract, 200, 202
specifying using substitution groups, 188–189
Hedge-Regular Grammars. See HRGs (Hedge-Regular Grammars)
help texts, nonlinear access of, 12
HERM (Higher Order Entity Relationship Modeling), 50
hexBinary primitive data type (XML Schema)
OO languages and, 374
overview, 126
SQL binary types and, 422
hierarchy
of built-in data types (XML Schema), 136
of classes (OO languages), 369
mapping XML Schema elements onto OO constructs, 377–381
mapping XML Schema types to OO types and, 377
overview, 9–10
translating XML Schema elements into relational schema, 424–426
of types based on behavior (OO languages), 369–370
of types based on syntax (OO languages), 370
of types (XML Schema), 38–39, 156
of XML Schema element definitions, 139
hieroglyphs, 7
Higher Order Entity Relationship Modeling (HERM), 50
HRGs (Hedge-Regular Grammars)
AOM and, 48
benefits, 31–32, 33–34
Boolean set operators and, 34
context-sensitive content models defined by, 33–34
defined, 32–33
DTDs as, 107
DTDs vs., 108
overview, 31–34
parsers obtained from, 32
recursion in, 33
tree-regular grammars vs., 33
HTML, meaning in, 324
hunter-gatherer societies, documents in, 7–8
hypertext, 13

I

IBM’s Experanto, 444
ID built-in constructed data type (XML Schema)
backward compatibility and, 170
overview, 133
ID primitive attribute type (XML)
for cross-references, 111
overview, 110
identifying assets of L2S
arc reversal for, 65
constraints, 64–65, 82
key for, 64
IDREF built-in constructed data type (XML Schema)
backward compatibility and, 170
overview, 133
IDREF primitive attribute type (XML)
for cross-references, 111
overview, 110
IDREFS built-in constructed data type (XML Schema), 133
IDREFS primitive attribute type (XML), 110
implementation
conceptual model independence from, 42–43
navigation and, 320–321
object-oriented XML data model implementations, 366–367
#IMPLIED primitive attribute type (XML), 110
import clause (XML Schema), 194–195
include clause (XML Schema), 191
influences asset
L2S and, 84
overview, 76
influence_type grammar (Relax NG), 299
informal description of jazz knowledge base, 72
Information Engineering, 46
information technology. See IT (information technology)
infrastructure, conceptual model independence from, 42–43
inheritance
clustered (AOM), 60, 61
is_a relationship defining (AOM), 60
in jazz knowledge base implementation (Relax NG), 292–296
in jazz knowledge base implementation (XML Schema), 262–265
mapping XML Schema onto OO structures, 388–389
multiple (AOM), 60, 61
of types (XML Schema), 262–265
in-scope namespaces property of elements (XML), 96
insert command (SQL), 418, 419
Inside Out album
review, XML document for, 257
XML document for, 254–257
instances of documents. See document instances
instrumentalist asset
is_a relationship resolution, 80–81
overview, 75
int built-in constructed data type (XML Schema)
mapping onto OO types, 374–375
overview, 134
SQL INTEGER type and, 422
integer built-in constructed data type (XML Schema)
mapping onto OO types, 374–375
overview, 134
integrating core technologies, 492
integrity constraints. See referential integrity constraints
intelligibleness, conceptual modeling principle of, 44
<interleave> clause (Relax NG) merging attribute groups, 235–236
overview, 219–222
interleaving operation, derivation of, 37
intersect operator (SQL), 417
intersection operation
in relational algebra, 398
in SQL queries, 417
into clause (SQL), 418
invariance, conceptual modeling principle of, 44
invoice master schema
defining using abstract types (XML Schema), 204–209
defining using dangling type definitions (XML Schema), 209–213
defining using substitution groups (XML Schema), 200–204
Relax NG example, 238–240
is_a relationship (AOM)
inheritance defined by, 60
modeling from informal description, 73
resolving in jazz knowledge base, 80–81
IT (information technology)
conceptual modeling and, 43
document metaphor’s importance for, 4–6
iterative development, conceptual modeling and, 47

J

Jakarta project of Apache, 341
jamSession asset
as business object, 260
is_a relationship resolution, 80, 81,
overview, 76
PNF and, 78, 79
jamSession_type grammar (Relax NG), 299–300
Jarrett, Keith
in Keith Jarrett Trio, 253–254
Köln Concert XML document, 256–257
XML document for, 250
Java
hard-coded constraint checks using, 341–344
integer data types, 375
package for jazzMusician asset, 391–392
regex class, 390–391
source code generation from Relax NG grammars, 248
Unicode support by, 374
visibility, 394
Java conversions from XML Schema
applying XSLT stylesheets in XML/Java binding environment, 393
approximate numeric types, 375
binary data, 374
boolean data type, 374
choice groups, 384–385
complex elements, 379–380
date and time data types, 375–376
date formats into Java objects, 343
exact numeric types, 374–375
global types, 387–388
inheritance, 388–389
leaf elements, 378–379
null values, 376–377
pattern constraining facet, 390–391
recursion, 385–386
repeating elements, 380–381
repeating sequences, 383–384
sequence information, 381–383
JAXB, 367
Jaxen XPath processor, 341
JaxMe, 367
jazz knowledge base example
albums, 254–256
assets in, 74–76
collaborations, 253–254
combining model with bookshop model, 472–475
conceptual model, Draft 1, 73, 75,
conceptual model, Draft 2, 78–79
conceptual model, Draft 3, 81, 82,
conceptual model, Draft 4, 82, 83,
conceptual model, Draft, 5, 84–85
conceptual model, final draft, 84, 86, 259
conceptual model, with added constraints, 339
critics, 257
cross-references, 13
hierarchical order in albums, 10
implementation in Relax NG, 291–318
implementation in XML Schema, 258–290
informal description, 72
L2S for business objects, 81–86
modeling aggregated items as assets or properties, 73–76
modeling nouns and verbs as assets, 73
musicians, 250–253
nonlinear order for performance information, 11–12
normalization, requirements for, 76–77
Partitioned Normal Form (PNF), 78–79
resolving is_a relationships, 80–81
reviews, 257
sequential order in albums, 9
jazzComposer asset
is_a relationship resolution, 80–81
overview, 75
JazzEncyclopedia_TypeLib type library, creating, 260–261
jazzMusician asset
as business object, 260
is_a relationship resolution, 80, 81,
Java package for, 391–392
L2S and, 81, 84
overview, 75
XML documents for musicians, 250–253
XML Schema declaration for, 138–139
jazzMusician business object
Relax NG, 304–308
XML Schema, 271–277
jazzMusicianList schema file, 451–452, 454
jazzMusician_type complex type (XML Schema)
critic_type derived from, 264–265
derivation from person_type, 262–264
jazzMusician_type grammar (Relax NG), 294–295
jazzMusicianWithContract schema file, 452–453, 454
jazzMusicianWithContractList schema file, 453, 454
jazzSinger asset
is_a relationship resolution, 80–81
overview, 75
join operations in relational algebra, 400–401

K

Keith Jarrett Trio
Inside Out XML document, 254–257
XML document for, 254–255
key clause
Schematron, 353
XML Schema, 172–173
keys and key references (Relax NG), 240–241
keys of assets (AOM)
atomic child nodes as, 78
defined, 51
for identifying assets of L2S, 64
minimal, 77
normalization and, 77
outgoing arcs in relational environments and, 77
PNF and, 78
specification for arcs, 52
types of, 51
keys (RDBMS), 397
keys (XML Schema)
foreign, 173–176
OO languages and, 393–394
primary, 172–173
KLEEN AOM modeling tool, 258
“Kleene” star. See powerset operation
Kleene, Stephen Cole, 30
knowledge base, jazz. See jazz knowledge base example
Köln Concert album, XML document for, 256–257
Kroenke, David, 46

L

L2S (Level 2 Structures), 62–66
business documents represented by, 63
business objects represented by, 63
constraints on identifying assets, 64–65, 82
identifying assets, 64–65
for jazz knowledge base, 81–86
modularization and, 63
purposes, 63
shop examples, 64, 65–66
labels of AOM assets
names vs., 52
overview, 50–51
as terminal symbols, 52
language built-in constructed data type (XML Schema), 132
large environments, 471–489
centralized and decentralized change management, 487–489
combining diverse schemata, 472–487
combining document instance sets, 475–479
embedded queries, 480–486
mediation techniques in, 471
model fusion, 472–475
model-driven schema
mediation, 486–487
schema-driven view definition, 479–480
left outer join operation in relational algebra, 401
length constraining facet (XML Schema), 129
letter categories for pattern constraining facet (XML Schema), 496
Level 2 Structures. See L2S (Level 2 Structures)
lexical representations (XML Schema)
of built-in primitive data types, 122–126
defined, 120
lexical space (XML Schema)
constraining facets and, 121
defined, 120
line breaks, XML canonical form for, 101
linear concepts, 8–10. See also hierarchy; sequence
lists (Relax NG), 227–228
Literary Machines, 13
local elements (XML Schema), mapping onto OO structures, 386–387
local name property (XML)
of attributes, 96
of elements, 95
local types
for AOM properties, 54–55
in XML Schema, 160–161
long built-in constructed data type (XML Schema)
mapping onto OO types, 374–375
overview, 134
SQL BIGINT type and, 422

M

magazine asset
L2S and, 81
overview, 76
magazine_type grammar (Relax NG), 300
Makoto, Murata, 215
margins, nonlinear reading and, 12
Marjomaa, Esko, 44
marks categories for pattern constraining facet (XML Schema), 497
marshaling, dynamic, 389–390
Martin, James, 46
maxExclusive constraining facet (XML Schema)
described, 130
implementing in OO languages, 390
maxInclusive constraining facet (XML Schema), 130
maxLength constraining facet (XML Schema), 129
maxOccurs cardinality constraint (XML Schema), 149–150
meaning
unique, as asset type requirement, 77
XML and, 324
mediation
combining document instance sets, 475–479
model-driven schema mediation, 486–487
techniques in large environments, 471
between XML databases and RDBMS, 433–444
merging
AOM assets, 68
AOM models, 68
attribute groups (Relax NG), 235–236
external grammars (Relax NG), 233
messages in OO languages, 368
metacharacters
defined, 495
escape sequences for, 496
metamodels
Schematron, 350
XML Information Set, 94
XML Schema, 140
method calls
constraints and, 390–393
overview, 368
minExclusive constraining facet (XML Schema), 130
minimal asset types, defined, 77
minimal keys of assets, defined, 77
minInclusive constraining facet (XML Schema)
described, 130
implementing in OO languages, 390
minLength constraining facet (XML Schema), 129
minOccurs cardinality constraint (XML Schema), 149–150
mixed content definitions in XML Schema, 150–152
ML, regular types exploited by, 34–35
model fusion, 472–475
model groups in DTDs, 109
model groups (Relax NG) cardinality constraints, 222–223
defining alternatives, 217–219
interleaving, 219–222
model groups (XML Schema)
cardinality constraints from particles, 139
complex types and, 139
DTD equivalents, 147, 148
nested connectors, 147–148
overview, 143–148
xs:all connector for constructing, 144–146
xs:choice connector for constructing, 146–147
xs:sequence connector for constructing, 143–144
model-driven schema mediation, 486–487
models (AOM)
components, 66
global definitions in, 66–67
merging, 68
modularization
AOM for, 69–70
L2S and, 63
multi-namespace schemata (XML Schema)
abstract master schema based on, 209–213
import clause for, 194–195
multiple display labels, resolving in Relax NG, 311–313
multiple inheritance (AOM), 60, 61
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.151.220