how abstract components are created when reading a schema – an animation in 9 slides --...

10
How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm org.eclipse.xsd XML Schema Infoset Model begin If not full screen, and not running in Internet Explorer, Press F5 to begin… © 2002 by IBM Corporation

Upload: karin-morton

Post on 21-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

How abstract components are created when reading a schema – an animation in 9 slides -- complexType

July 26, 2002 5:00pm

org.eclipse.xsdXML Schema Infoset Model

begin

If not full screen, and not running in Internet Explorer,Press F5 to begin…

© 2002 by IBM Corporation

Page 2: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of a complexType definition and construction of the abstract schema components.

<xs:complexType name="ct02"> <xs:sequence> <xs:element ref="refed"/> <xs:sequence minOccurs="0" maxOccurs="3"> <xs:element name="e1" type="xs:string"/> <xs:element name="e2" type="xs:string"/> </xs:sequence> </xs:sequence> </xs:complexType>

And elsewhere there is a global element declaration with the name “refed”

Now let’s follow how the abstract schema componentsare built, by getting “blank” objects from XSDFactory,

We’ll follow this example:

setting their properties, and linking them to each other…

Page 3: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of <xs:complexType name=“ct02”>

XSDComplexTypeDefinition

name: targetNamespace: baseType:

XS

DF

actory

ct02

content:

Page 4: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of <xs:sequence>

XSDComplexTypeDefinition

name: targetNamespace: baseType:

XS

DF

actory

ct02

XSDParticle

term:

minOccurs:

maxOccurs:content:

XSDModelGroup

compositor:

particles: list

XSDCompositor

compositor: XSDCompositor.SEQUENCE

Page 5: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of <xs:element ref=“refed”/> 1

XSDComplexTypeDefinition

name: targetNamespace: baseType:

XS

DF

actory

ct02

XSDParticle

term:

minOccurs:

maxOccurs:content:

XSDModelGroup

compositor:

particles: list

XSDCompositor

compositor: XSDCompositor.SEQUENCE

refedAsktheschemaobjectwhere theElementDeclarationnamed refed is

XSDSchema

contents: list

Page 6: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of <xs:element ref=“refed”/> 2

XSDComplexTypeDefinition

name: targetNamespace: baseType:

XS

DF

actory

ct02

XSDParticle

term:

minOccurs:

maxOccurs:content:

XSDModelGroup

compositor:

particles: list

XSDCompositor

compositor: XSDCompositor.SEQUENCE

XSDParticle

term:

content:

minOccurs:

maxOccurs:

XSDElementDeclaration

resolvedElementDeclaration:

isElementDeclarationReference: true

refed

Page 7: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of <xs:sequence minOccurs=“0” maxOccurs=“3”/>

XSDComplexTypeDefinition

name: targetNamespace: baseType:

XS

DF

actory

ct02

XSDParticle

term:

minOccurs:

maxOccurs:content:

XSDModelGroup

compositor:

particles: list

XSDCompositor

compositor: XSDCompositor.SEQUENCE

XSDParticleterm:

content:

minOccurs:

maxOccurs:

XSDElementDeclarationresolvedElementDeclaration:

isElementDeclarationReference: true

XSDParticle

term:

minOccurs:

maxOccurs:

XSDModelGroup

compositor:

particles: list

0

3

refed

Page 8: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of <xs:element name=“e1” type=“xs:string”/>

XSDComplexTypeDefinition

name: targetNamespace: baseType:

XS

DF

actory

ct02

XSDParticle

term:

minOccurs:

maxOccurs:content:

XSDModelGroup

compositor:

particles: list

XSDCompositor

compositor: XSDCompositor.SEQUENCE

XSDParticleterm:

content:

minOccurs:

maxOccurs:

XSDElementDeclarationresolvedElementDeclaration:

isElementDeclarationReference: true

XSDParticle

term:

minOccurs:

maxOccurs:

XSDModelGroup

compositor:

particles: list

03

XSDParticle

term:

minOccurs:

maxOccurs:

XSDElementDeclaration

name:

targetNamespace:

typeDefinition:

isSetAnonymousTypeDefinition: false

e1

XSDSimpleType

name: string targetNamespace: http://www.w3.org/2001/XMLSchema

refed

Page 9: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of <xs:element name=“e2” type=“xs:string”/>

XSDComplexTypeDefinition

name: targetNamespace: baseType:

XS

DF

actory

ct02

XSDParticle

term:

minOccurs:

maxOccurs:content:

XSDModelGroup

compositor:

particles: list

XSDCompositor

compositor: XSDCompositor.SEQUENCE

XSDParticleterm:

content:

minOccurs:

maxOccurs:

XSDElementDeclarationresolvedElementDeclaration:

isElementDeclarationReference: true

XSDParticle

term:

minOccurs:

maxOccurs:

XSDModelGroup

compositor:

particles: list

03

XSDParticle

term:

minOccurs:

maxOccurs:

XSDElementDeclaration

name:

targetNamespace:

typeDefinition:

isSetAnonymousTypeDefinition: false

e1

XSDParticle

term: minOccurs: maxOccurs:

XSDElementDeclaration

name:

targetNamespace:

typeDefinition:

isSetAnonymousTypeDefinition: false

XSDSimpleType

name: string targetNamespace: http://www.w3.org/2001/XMLSchema

e2

refed

Page 10: How abstract components are created when reading a schema – an animation in 9 slides -- complexType July 26, 2002 5:00pm This presentation will probably

Parse of </xs:complexType>

XSDComplexTypeDefinition

name: targetNamespace: baseType:

ct02

XSDParticle

term:

minOccurs:

maxOccurs:content:

XSDModelGroup

compositor:

particles: list

XSDCompositor

compositor: XSDCompositor.SEQUENCE

XSDParticleterm:

Content:

minOccurs:

maxOccurs:

XSDElementDeclarationresolvedElementDeclaration:

isElementDeclarationReference: true

XSDParticle

term:

minOccurs:

maxOccurs:

XSDModelGroup

compositor:

particles: list

03

XSDParticle

term:

minOccurs:

maxOccurs:

XSDElementDeclaration

name:

targetNamespace:

typeDefinition:

isSetAnonymousTypeDefinition: false

e1

XSDParticle

term: minOccurs: maxOccurs:

XSDElementDeclaration

name:

targetNamespace:

typeDefinition:

isSetAnonymousTypeDefinition: false

XSDSimpleType

name: string targetNamespace: http://www.w3.org/2001/XMLSchema

e2

XSDSchema

contents: list

refed

now including ct02