
(object Petal
    version    	42
    _written   	"Rose 4.5.8054a"
    charSet    	0)

(object Design "Logical View"
    is_unit    	TRUE
    is_loaded  	TRUE
    defaults   	(object defaults
	rightMargin 	0.250000
	leftMargin 	0.250000
	topMargin  	0.250000
	bottomMargin 	0.500000
	pageOverlap 	0.250000
	clipIconLabels 	TRUE
	autoResize 	TRUE
	snapToGrid 	TRUE
	gridX      	16
	gridY      	16
	defaultFont 	(object Font
	    size       	10
	    face       	"Arial"
	    bold       	FALSE
	    italics    	FALSE
	    underline  	FALSE
	    strike     	FALSE
	    color      	0
	    default_color 	TRUE)
	showMessageNum 	1
	showClassOfObject 	TRUE
	notation   	"Unified")
    root_usecase_package 	(object Class_Category "Use Case View"
	quid       	"3ABFD9A70151"
	exportControl 	"Public"
	global     	TRUE
	logical_models 	(list unit_reference_list)
	logical_presentations 	(list unit_reference_list
	    (object UseCaseDiagram "Main"
		quid       	"3ABFD9A7018C"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    root_category 	(object Class_Category "Logical View"
	quid       	"3ABFD9A70150"
	exportControl 	"Public"
	global     	TRUE
	subsystem  	"Component View"
	quidu      	"3ABFD9A70152"
	logical_models 	(list unit_reference_list
	    (object Class_Category "http"
		quid       	"3ABFD9AD01F8"
		exportControl 	"Public"
		logical_models 	(list unit_reference_list
		    (object Class "HTTPBinding"
			quid       	"3ABFE57C0136"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE5FF1D0019"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"409843F103C0"
				supplier   	"Logical View::http::IHTTPBinding"
				quidu      	"409843A702EB"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "verb"
				quid       	"3ABFE60D00DB"
				type       	"String"))
			language   	"Java")
		    (object Class "HTTPOperation"
			quid       	"3ABFE6AE0050"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE5FF4B037C"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"4098444602CC"
				supplier   	"Logical View::http::IHTTPOperation"
				quidu      	"409843FF02BB"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "locationURI"
				quid       	"3ABFE70D0147"
				type       	"String"))
			language   	"Java")
		    (object Class "HTTPUrlReplacement"
			quid       	"3ABFEA1A017C"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE728B802C3"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"409844D202C5"
				supplier   	"Logical View::http::IHTTPUrlReplacement"
				quidu      	"4098449600D8"))
			language   	"Java")
		    (object Class "HTTPUrlEncoded"
			quid       	"3ABFEA6D0294"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE728D50094"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"409844910009"
				supplier   	"Logical View::http::IHTTPUrlEncoded"
				quidu      	"409844570063"))
			language   	"Java")
		    (object Class "HTTPAddress"
			quid       	"3AC3BF2500F5"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE5FEA901B7"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")
			    (object Inheritance_Relationship
				quid       	"409840D800C4"
				supplier   	"Logical View::http::IHTTPAddress"
				quidu      	"4098408901A1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "locationURI"
				quid       	"3AC3BFA7012E"
				type       	"String"))
			language   	"Java")
		    (object Class "IHTTPAddress"
			quid       	"4098408901A1"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.http.HTTPAddress"
				quid       	"409840A4013A"
				stereotype 	"javaclass"))
			language   	"Java")
		    (object Class "IHTTPBinding"
			quid       	"409843A702EB"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.http.HTTPBinding"
				quid       	"409843CA0177"
				stereotype 	"javaclass"))
			language   	"Java")
		    (object Class "IHTTPOperation"
			quid       	"409843FF02BB"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.http.HTTPOperation"
				quid       	"409844130204"
				stereotype 	"javaclass"))
			language   	"Java")
		    (object Class "IHTTPUrlEncoded"
			quid       	"409844570063"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.http.HTTPUrlEncoded"
				quid       	"4098446D021C"
				stereotype 	"javaclass"))
			language   	"Java")
		    (object Class "IHTTPUrlReplacement"
			quid       	"4098449600D8"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.http.HTTPUrlReplacement"
				quid       	"409844AC01AB"
				stereotype 	"javaclass"))
			language   	"Java"))
		logical_presentations 	(list unit_reference_list
		    (object ClassDiagram "Port"
			quid       	"3AC11E5201FB"
			title      	"Port"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::http::HTTPAddress" @1
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(672, 784)
				label      	(object ItemLabel
				    Parent_View 	@1
				    location   	(471, 703)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	402
				    justify    	0
				    label      	"HTTPAddress")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AC3BF2500F5"
				compartment 	(object Compartment
				    Parent_View 	@1
				    location   	(471, 763)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	409)
				width      	420
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::http::IHTTPAddress" @2
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(672, 288)
				label      	(object ItemLabel
				    Parent_View 	@2
				    location   	(138, 229)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1068
				    justify    	0
				    label      	"IHTTPAddress")
				stereotype 	(object ItemLabel
				    Parent_View 	@2
				    location   	(138, 179)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	1068
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"4098408901A1"
				compartment 	(object Compartment
				    Parent_View 	@2
				    location   	(138, 289)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	1065)
				width      	1086
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @3
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"409840D800C4"
				client     	@1
				supplier   	@2
				line_style 	0)))
		    (object ClassDiagram "Extensibility"
			quid       	"3AE5FE3B037B"
			title      	"Extensibility"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::ExtensibilityElement" @4
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(272, 128)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@4
				    location   	(70, 53)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	404
				    justify    	0
				    label      	"ExtensibilityElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5DBB602A9"
				width      	422
				height     	174
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::http::HTTPAddress" @5
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(272, 480)
				label      	(object ItemLabel
				    Parent_View 	@5
				    location   	(128, 428)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	288
				    justify    	0
				    label      	"HTTPAddress")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AC3BF2500F5"
				width      	306
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::http::HTTPBinding" @6
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(480, 640)
				label      	(object ItemLabel
				    Parent_View 	@6
				    location   	(344, 588)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	272
				    justify    	0
				    label      	"HTTPBinding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFE57C0136"
				width      	290
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @7
				location   	(272, 305)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@4
				vertices   	(list Points
				    (272, 305)
				    (272, 215)))
			    (object InheritView "" @8
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE5FEA901B7"
				client     	@5
				supplier   	@4
				line_style 	3
				origin_attachment 	(272, 416)
				terminal_attachment 	(272, 305)
				drawSupplier 	@7)
			    (object InheritView "" @9
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE5FF1D0019"
				client     	@6
				supplier   	@4
				line_style 	3
				origin_attachment 	(475, 576)
				terminal_attachment 	(475, 305)
				drawSupplier 	@7)
			    (object ClassView "Class" "Logical View::http::HTTPOperation" @10
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(672, 816)
				label      	(object ItemLabel
				    Parent_View 	@10
				    location   	(518, 764)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	308
				    justify    	0
				    label      	"HTTPOperation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFE6AE0050"
				width      	326
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @11
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE5FF4B037C"
				client     	@10
				supplier   	@4
				line_style 	3
				origin_attachment 	(656, 752)
				terminal_attachment 	(656, 305)
				drawSupplier 	@7)
			    (object ClassView "Class" "Logical View::http::HTTPUrlReplacement" @12
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(816, 992)
				label      	(object ItemLabel
				    Parent_View 	@12
				    location   	(605, 941)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	422
				    justify    	0
				    label      	"HTTPUrlReplacement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFEA1A017C"
				width      	440
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @13
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE728B802C3"
				client     	@12
				supplier   	@4
				line_style 	3
				origin_attachment 	(869, 929)
				terminal_attachment 	(869, 305)
				drawSupplier 	@7)
			    (object ClassView "Class" "Logical View::http::HTTPUrlEncoded" @14
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1072, 1168)
				label      	(object ItemLabel
				    Parent_View 	@14
				    location   	(900, 1117)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	344
				    justify    	0
				    label      	"HTTPUrlEncoded")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFEA6D0294"
				width      	362
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @15
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE728D50094"
				client     	@14
				supplier   	@4
				line_style 	3
				origin_attachment 	(1103, 1105)
				terminal_attachment 	(1103, 305)
				drawSupplier 	@7)))
		    (object ClassDiagram "Binding"
			quid       	"3AE72A7000A9"
			title      	"Binding"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::http::HTTPBinding" @16
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(576, 592)
				label      	(object ItemLabel
				    Parent_View 	@16
				    location   	(440, 540)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	272
				    justify    	0
				    label      	"HTTPBinding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFE57C0136"
				compartment 	(object Compartment
				    Parent_View 	@16
				    location   	(440, 600)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	275)
				width      	290
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::http::HTTPOperation" @17
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1696, 608)
				label      	(object ItemLabel
				    Parent_View 	@17
				    location   	(1495, 527)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	402
				    justify    	0
				    label      	"HTTPOperation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFE6AE0050"
				compartment 	(object Compartment
				    Parent_View 	@17
				    location   	(1495, 587)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	409)
				width      	420
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::http::HTTPUrlReplacement" @18
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1616, 1808)
				label      	(object ItemLabel
				    Parent_View 	@18
				    location   	(1405, 1757)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	422
				    justify    	0
				    label      	"HTTPUrlReplacement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFEA1A017C"
				width      	440
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::http::HTTPUrlEncoded" @19
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(608, 1520)
				label      	(object ItemLabel
				    Parent_View 	@19
				    location   	(436, 1469)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	344
				    justify    	0
				    label      	"HTTPUrlEncoded")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3ABFEA6D0294"
				width      	362
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::http::IHTTPBinding" @20
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(576, 160)
				label      	(object ItemLabel
				    Parent_View 	@20
				    location   	(50, 101)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1052
				    justify    	0
				    label      	"IHTTPBinding")
				stereotype 	(object ItemLabel
				    Parent_View 	@20
				    location   	(50, 51)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	1052
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"409843A702EB"
				compartment 	(object Compartment
				    Parent_View 	@20
				    location   	(50, 161)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	1050)
				width      	1070
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @21
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"409843F103C0"
				client     	@16
				supplier   	@20
				line_style 	0)
			    (object ClassView "Class" "Logical View::http::IHTTPOperation" @22
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1696, 160)
				label      	(object ItemLabel
				    Parent_View 	@22
				    location   	(1150, 101)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1092
				    justify    	0
				    label      	"IHTTPOperation")
				stereotype 	(object ItemLabel
				    Parent_View 	@22
				    location   	(1150, 51)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	1092
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"409843FF02BB"
				compartment 	(object Compartment
				    Parent_View 	@22
				    location   	(1150, 161)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	1090)
				width      	1110
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @23
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"4098444602CC"
				client     	@17
				supplier   	@22
				line_style 	0)
			    (object ClassView "Class" "Logical View::http::IHTTPUrlEncoded" @24
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(608, 1104)
				label      	(object ItemLabel
				    Parent_View 	@24
				    location   	(44, 1045)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1128
				    justify    	0
				    label      	"IHTTPUrlEncoded")
				stereotype 	(object ItemLabel
				    Parent_View 	@24
				    location   	(44, 995)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	1128
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"409844570063"
				compartment 	(object Compartment
				    Parent_View 	@24
				    location   	(44, 1105)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	1125)
				width      	1146
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @25
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"409844910009"
				client     	@19
				supplier   	@24
				line_style 	0)
			    (object ClassView "Class" "Logical View::http::IHTTPUrlReplacement" @26
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1584, 1376)
				label      	(object ItemLabel
				    Parent_View 	@26
				    location   	(981, 1317)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1206
				    justify    	0
				    label      	"IHTTPUrlReplacement")
				stereotype 	(object ItemLabel
				    Parent_View 	@26
				    location   	(981, 1267)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	1206
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"4098449600D8"
				compartment 	(object Compartment
				    Parent_View 	@26
				    location   	(981, 1377)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	1203)
				width      	1224
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @27
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"409844D202C5"
				client     	@18
				supplier   	@26
				line_style 	0)))))
	    (object Class_Category "wsdl"
		quid       	"3ADFB8E5021E"
		documentation 	
|The WSDL model contains classes for the Web Services Description Language (WSDL).
|
|WSDL describes network services as sets of endpoints operating on messages. The operations and messages are described abstractly, and then bound to a concrete network protocol and message format to define an endpoint.
|
|WSDL describes the formats of the messages exchanged by the services, and supports the XML Schemas specification as its canonical type system. This package uses an XML Schema Infoset model package (see the XSD package) to describe the abstract message formats.
|
|The model contains the following diagrams, named after the corresponding chapters in the WSDL 1.1 specification (http://www.w3.org/TR/2001/NOTE-wsdl-20010315)
|- 2.1 Definition, shows the WSDL definition element and the WSDL document structure
|- 2.1.1 Naming and Linking, shows the namespace and import mechanism
|- 2.1.3 Extensibility, shows the WSDL extensibility mechanism
|- 2.2 Types, shows the use of XML Schema types in WSDL
|- 2.3 Messages, 2.4 PortTypes, 2.5 Bindings and 2.7 Services, show the major WSDL elements and their relations.
|
|The WSDL classes extend the javax.wsdl interfaces defined by JSR 110. Classes with interface and datatype stereotypes are used to represent these non-MOF interfaces.
		
		exportControl 	"Public"
		logical_models 	(list unit_reference_list
		    (object Class "WSDLElement"
			quid       	"3AD5C6A302DD"
			documentation 	"This class represents a WSDL language element."
			operations 	(list Operations
			    (object Operation "getEnclosingDefinition"
				quid       	"3CD1529600C8"
				result     	"Definition"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setEnclosingDefinition"
				quid       	"3CD152B80347"
				parameters 	(list Parameters
				    (object Parameter "definition"
					type       	"Definition"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "documentationElement"
				quid       	"3CCE443602A3"
				type       	"DOMElement")
			    (object ClassAttribute "element"
				quid       	"3F97DBD30207"
				type       	"DOMElement"))
			language   	"Java"
			abstract   	TRUE)
		    (object Class "PortType"
			quid       	"3AD5C7F001A5"
			documentation 	"This class represents a WSDL portType element of the WSDL specification version 1.1 and an Interface component of the WSDL specification version 1.2. A port type or Interface is a named set of abstract operations and the abstract messages involved."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD5C9B70150"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD")
			    (object Inheritance_Relationship
				quid       	"3F6F1FD8019F"
				supplier   	"Logical View::wsdl::IPortType"
				quidu      	"3B84A5BE0331"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "qName"
				quid       	"3AEB488E0023"
				type       	"QName")
			    (object ClassAttribute "undefined"
				quid       	"3BDDF1E301E5"
				type       	"boolean")
			    (object ClassAttribute "proxy"
				quid       	"3D18CDEB0316"
				type       	"boolean")
			    (object ClassAttribute "resourceURI"
				quid       	"3D18D4FD01BA"
				type       	"String"))
			language   	"Java")
		    (object Class "Operation"
			quid       	"3AD5C80D03CE"
			documentation 	"This class represents a WSDL operation element. A WSDL operation is an abstract description of an action supported by a service."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE9DE98003C"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD")
			    (object Inheritance_Relationship
				quid       	"3F6F1FE20171"
				supplier   	"Logical View::wsdl::IOperation"
				quidu      	"3B84A77600D1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "style"
				quid       	"3AEB472601AC"
				type       	"OperationType")
			    (object ClassAttribute "name"
				quid       	"3BDD9643004C"
				type       	"String")
			    (object ClassAttribute "undefined"
				quid       	"3BDDF235003E"
				type       	"boolean")
			    (object ClassAttribute "proxy"
				quid       	"3D18CE2201AD"
				type       	"boolean")
			    (object ClassAttribute "resourceURI"
				quid       	"3D18D520011B"
				type       	"String"))
			language   	"Java")
		    (object Class "Message"
			quid       	"3AD5C9590078"
			documentation 	"This class represents a WSDL message element. A WSDL message is an abstract, typed definition of the data being communicated."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD5D05501C4"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD")
			    (object Inheritance_Relationship
				quid       	"3B84A8D102BA"
				supplier   	"Logical View::wsdl::IMessage"
				quidu      	"3B84A8AF004F"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "qName"
				quid       	"3AEB487C01FE"
				type       	"QName")
			    (object ClassAttribute "undefined"
				quid       	"3BDDF1D20226"
				type       	"boolean")
			    (object ClassAttribute "proxy"
				quid       	"3D18CE4B02B0"
				type       	"boolean")
			    (object ClassAttribute "resourceURI"
				quid       	"3D18D54200F1"
				type       	"String"))
			language   	"Java")
		    (object Class "Part"
			quid       	"3AD5CE1C032E"
			documentation 	"This class represents a WSDL part element. Parts describe the logical abstract content of a message. Each part is associated with a type from some type system. "
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B84A96D02F1"
				supplier   	"Logical View::wsdl::IPart"
				quidu      	"3B84A93F01BE")
			    (object Inheritance_Relationship
				quid       	"3B897E230237"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3BCE70B703C8"
				type       	"String")
			    (object ClassAttribute "elementName"
				quid       	"3B84B08703DB"
				type       	"QName")
			    (object ClassAttribute "typeName"
				quid       	"3BCE70C303C5"
				type       	"QName"))
			language   	"Java")
		    (object Class "Binding"
			quid       	"3AD5D2860261"
			documentation 	"This class represents a WSDL binding element. A binding defines message format and protocol details for operations and messages defined by a particular portType. There may be any number of bindings for a given portType."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD5FA0F02F0"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A")
			    (object Inheritance_Relationship
				quid       	"3B8595410129"
				supplier   	"Logical View::wsdl::IBinding"
				quidu      	"3B84ABC60219"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "qName"
				quid       	"3AEB4899014B"
				type       	"QName")
			    (object ClassAttribute "undefined"
				quid       	"3BDDF1F401A3"
				type       	"boolean")
			    (object ClassAttribute "proxy"
				quid       	"3D18CE6D0151"
				type       	"boolean")
			    (object ClassAttribute "resourceURI"
				quid       	"3D18D4DF035C"
				type       	"String"))
			language   	"Java")
		    (object Class "BindingOperation"
			quid       	"3AD5D3CB0145"
			documentation 	"This class represents a WSDL operation element within a binding. An operation element within a binding specifies binding information for the operation with the same name within the binding's portType. "
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD6009202F7"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A")
			    (object Inheritance_Relationship
				quid       	"3B84ADE401DC"
				supplier   	"Logical View::wsdl::IBindingOperation"
				quidu      	"3B84ADC00072"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3B89C4CB0199"
				type       	"String"))
			language   	"Java")
		    (object Class "Service"
			quid       	"3AD5D8F002F8"
			documentation 	"This class represents a WSDL service element. A service groups a set of related ports together."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD5FA20025E"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A")
			    (object Inheritance_Relationship
				quid       	"3B85954E01B4"
				supplier   	"Logical View::wsdl::IService"
				quidu      	"3B84AB490287"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "qName"
				quid       	"3AEB48A40151"
				type       	"QName")
			    (object ClassAttribute "undefined"
				quid       	"3BDDF20D0203"
				type       	"boolean")
			    (object ClassAttribute "proxy"
				quid       	"3D18D4810220"
				type       	"boolean")
			    (object ClassAttribute "resourceURI"
				quid       	"3D18D4C501E2"
				type       	"String"))
			language   	"Java")
		    (object Class "Port"
			quid       	"3AD5D9170286"
			documentation 	"This class represents a WSDL port element. A port defines an individual endpoint by specifying a single address for a binding"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD600CB00AA"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A")
			    (object Inheritance_Relationship
				quid       	"3B85954502C9"
				supplier   	"Logical View::wsdl::IPort"
				quidu      	"3B84AB800326"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3AD5D9A00391"
				type       	"String"))
			language   	"Java")
		    (object Class "ExtensibilityElement"
			quid       	"3AD5DBB602A9"
			documentation 	"This class represents a WSDL extensibility element. WSDL allows extensibility elements representing a specific technology under various elements defined by WSDL."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B84B14903D0"
				supplier   	"Logical View::wsdl::IExtensibilityElement"
				quidu      	"3B84B12402AB")
			    (object Inheritance_Relationship
				quid       	"3BDDF53502C3"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "required"
				quid       	"3AF9543C0073"
				type       	"boolean")
			    (object ClassAttribute "elementType"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3B85B21A0271"
				type       	"QName"))
			language   	"Java")
		    (object Class "Definition"
			quid       	"3AD5E43F008E"
			documentation 	"This class represents a WSDL definitions element. The WSDL definitions element is the root element of a WSDL document."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD5FDB803D4"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A")
			    (object Inheritance_Relationship
				quid       	"3B84B1F80382"
				supplier   	"Logical View::wsdl::IDefinition"
				quidu      	"3B84B1D90142"))
			operations 	(list Operations
			    (object Operation "getDocument"
				quid       	"3CD14FC2012B"
				result     	"DOMDocument"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setDocument"
				quid       	"3CD150DE01E7"
				parameters 	(list Parameters
				    (object Parameter "document"
					type       	"DOMDocument"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "targetNamespace"
				quid       	"3AD5E474004E"
				type       	"String")
			    (object ClassAttribute "location"
				quid       	"40352B7C0396"
				type       	"String")
			    (object ClassAttribute "qName"
				quid       	"3AEB485702F5"
				type       	"QName")
			    (object ClassAttribute "encoding"
				quid       	"3CADD00D000D"
				type       	"String"))
			language   	"Java")
		    (object Class "Import"
			quid       	"3AD5E4F903DE"
			documentation 	"This class represents WSDL import element. WSDL allows associating a namespace with a document location using an import element."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD5EE58037A"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD")
			    (object Inheritance_Relationship
				quid       	"3F6F200D0340"
				supplier   	"Logical View::wsdl::IImport"
				quidu      	"3B84B2020119"))
			operations 	(list Operations
			    (object Operation "getSchema"
				quid       	"3C8672C10379"
				result     	"XSDSchema"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setSchema"
				quid       	"3C8672C10397"
				parameters 	(list Parameters
				    (object Parameter "schema"
					type       	"XSDSchema"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "namespaceURI"
				quid       	"3AD5E50A0036"
				type       	"String")
			    (object ClassAttribute "locationURI"
				quid       	"3AD5E5140211"
				type       	"String"))
			language   	"Java")
		    (object Class "ExtensibleElement"
			quid       	"3AD5FCFA033A"
			documentation 	" WSDL allows elements representing a specific technology (referred to here as extensibility elements) under various elements defined by WSDL. This class represents a WSDL point of extensibility."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AD5FE3C03D4"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD"))
			operations 	(list Operations
			    (object Operation "getExtensibilityElements"
				quid       	"3B85C12C03CD"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "addExtensibilityElement"
				quid       	"3B85C1470295"
				parameters 	(list Parameters
				    (object Parameter "extElement"
					type       	"IExtensibilityElement"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			language   	"Java"
			abstract   	TRUE)
		    (object Class "Input"
			quid       	"3AE0789F0059"
			documentation 	"This class represents a WSDL input element. An input element specifies the abstract message format for the input of the operation."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B85C504025F"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD")
			    (object Inheritance_Relationship
				quid       	"3F67722802E7"
				supplier   	"Logical View::wsdl::MessageReference"
				quidu      	"3F6771DB02DC")
			    (object Inheritance_Relationship
				quid       	"3F6F1FEE031D"
				supplier   	"Logical View::wsdl::IInput"
				quidu      	"3B84A7EE0015"))
			language   	"Java")
		    (object Class "Output"
			quid       	"3AE078B60232"
			documentation 	"This class represents a WSDL output element. An output element specifies the abstract message format for the output of the operation."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B85C50C035B"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD")
			    (object Inheritance_Relationship
				quid       	"3F67723500DD"
				supplier   	"Logical View::wsdl::MessageReference"
				quidu      	"3F6771DB02DC")
			    (object Inheritance_Relationship
				quid       	"3F6F1FF801CD"
				supplier   	"Logical View::wsdl::IOutput"
				quidu      	"3B84A829027D"))
			language   	"Java")
		    (object Class "Fault"
			quid       	"3AE078BE0108"
			documentation 	"This class represents a WSDL fault element. Fault elements specify the abstract message format for any error messages that may be output as the result of the operation "
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE1C82002F2"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD")
			    (object Inheritance_Relationship
				quid       	"3F67723D0319"
				supplier   	"Logical View::wsdl::MessageReference"
				quidu      	"3F6771DB02DC")
			    (object Inheritance_Relationship
				quid       	"3F6F2002002D"
				supplier   	"Logical View::wsdl::IFault"
				quidu      	"3B84A861031D"))
			language   	"Java")
		    (object Class "BindingInput"
			quid       	"3AE08A8202D4"
			documentation 	"This class represents a WSDL input element within a operation within a binding. An input element within an operation within a binding specifies binding information for the input of the operation. "
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B84AE1B0113"
				supplier   	"Logical View::wsdl::IBindingInput"
				quidu      	"3B84ADEB0100")
			    (object Inheritance_Relationship
				quid       	"3B85B59B0072"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A"))
			operations 	(list Operations
			    (object Operation "getInput"
				quid       	"3C8653A40203"
				result     	"IInput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setInput"
				quid       	"3C8653B503A2"
				parameters 	(list Parameters
				    (object Parameter "input"
					type       	"IInput"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3B85C1EA020E"
				type       	"String"))
			language   	"Java")
		    (object Class "BindingOutput"
			quid       	"3AE08A8F028C"
			documentation 	"This class represents a WSDL output element within a operation within a binding. An output element within an operation within a binding specifies binding information for the output of the operation. "
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B84AE4302AB"
				supplier   	"Logical View::wsdl::IBindingOutput"
				quidu      	"3B84AE210111")
			    (object Inheritance_Relationship
				quid       	"3B85B5A4027E"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A"))
			operations 	(list Operations
			    (object Operation "getOutput"
				quid       	"3C8653D900F1"
				result     	"IOutput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setOutput"
				quid       	"3C8653F10326"
				parameters 	(list Parameters
				    (object Parameter "output"
					type       	"IOutput"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3B85C20200BE"
				type       	"String"))
			language   	"Java")
		    (object Class "BindingFault"
			quid       	"3AE08A9E03A6"
			documentation 	"This class represents a WSDL fault element within a operation within a binding. A fault element within an operation within a binding specifies binding information for the fault with the same name. "
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3AE0938602C9"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A")
			    (object Inheritance_Relationship
				quid       	"3B84AE710333"
				supplier   	"Logical View::wsdl::IBindingFault"
				quidu      	"3B84AE4F00BD"))
			operations 	(list Operations
			    (object Operation "getFault"
				quid       	"3C865413037F"
				result     	"IFault"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setFault"
				quid       	"3C8654210109"
				parameters 	(list Parameters
				    (object Parameter "fault"
					type       	"IFault"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3B85BF9E014A"
				type       	"String"))
			language   	"Java")
		    (object Class "QName"
			quid       	"3AE8ED220140"
			documentation 	"This class represents the javax.wsdl.QName class. A QName is a fully qualified name."
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.xml.namespace.QName"
				quid       	"3B849DA9003D"
				stereotype 	"javaclass"))
			language   	"Java")
		    (object Class "Namespace"
			quid       	"3AEA3CD30030"
			documentation 	"This class represents a namespace and the corresponding namespace prefix used in a WSDL document."
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "URI"
				quid       	"3AEA3D2901B1"
				type       	"String")
			    (object ClassAttribute "prefix"
				quid       	"3AEA3D320236"
				type       	"String"))
			language   	"Java")
		    (object Class "OperationType"
			quid       	"3AEB4782024F"
			documentation 	
|ONE_WAY=1
|REQUEST_RESPONSE=2
|SOLICIT_RESPONSE=3
|NOTIFICATION=4
			
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.OperationType"
				quid       	"3B85C35303E3"
				stereotype 	"javaclass"))
			language   	"Java")
		    (object Class "IPortType"
			quid       	"3B84A5BE0331"
			documentation 	"This class represents the javax.wsdl.PortType non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "addOperation"
				quid       	"3B896AC101CA"
				parameters 	(list Parameters
				    (object Parameter "operation"
					type       	"IOperation"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getOperation"
				quid       	"3B896BAF01A4"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"String")
				    (object Parameter "inputName"
					type       	"String")
				    (object Parameter "outputName"
					type       	"String"))
				result     	"IOperation"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getOperations"
				quid       	"3B896BF7031A"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.PortType"
				quid       	"3B84A632000D"
				stereotype 	"javaclass")))
		    (object Class "IOperation"
			quid       	"3B84A77600D1"
			documentation 	"This class represents the javax.wsdl.Operation non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "addFault"
				quid       	"3B896C420065"
				parameters 	(list Parameters
				    (object Parameter "fault"
					type       	"IFault"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getFault"
				quid       	"3B896C59028F"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"String"))
				result     	"IFault"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getFaults"
				quid       	"3B896C7102B1"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getParameterOrdering"
				quid       	"3B896C8101B0"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setParameterOrdering"
				quid       	"3B896C99031D"
				parameters 	(list Parameters
				    (object Parameter "parameterOrder"
					type       	"IList"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getInput"
				quid       	"3C8654E5018D"
				result     	"IInput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setInput"
				quid       	"3C8662C40107"
				parameters 	(list Parameters
				    (object Parameter "input"
					type       	"IInput"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getOutput"
				quid       	"3C8662E40094"
				result     	"IOutput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setOutput"
				quid       	"3C8662F001D2"
				parameters 	(list Parameters
				    (object Parameter "output"
					type       	"IOutput"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Operation"
				quid       	"3B84A799012B"
				stereotype 	"javaclass")))
		    (object Class "IInput"
			quid       	"3B84A7EE0015"
			documentation 	"This class represents the javax.wsdl.Input non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "getMessage"
				quid       	"3C86633100EF"
				result     	"IMessage"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setMessage"
				quid       	"3C8663470277"
				parameters 	(list Parameters
				    (object Parameter "message"
					type       	"IMessage"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Input"
				quid       	"3B84A8000039"
				stereotype 	"javaclass")))
		    (object Class "IOutput"
			quid       	"3B84A829027D"
			documentation 	"This class represents the javax.wsdl.Output non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "getMessage"
				quid       	"3C86643A035D"
				result     	"IMessage"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setMessage"
				quid       	"3C86644501C8"
				parameters 	(list Parameters
				    (object Parameter "message"
					type       	"IMessage"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Output"
				quid       	"3B84A83901D5"
				stereotype 	"javaclass")))
		    (object Class "IFault"
			quid       	"3B84A861031D"
			documentation 	"This class represents the javax.wsdl.Fault non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "getMessage"
				quid       	"3C86646A00BD"
				result     	"IMessage"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setMessage"
				quid       	"3C8664750131"
				parameters 	(list Parameters
				    (object Parameter "message"
					type       	"IMessage"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Fault"
				quid       	"3B84A8710208"
				stereotype 	"javaclass")))
		    (object Class "IMessage"
			quid       	"3B84A8AF004F"
			documentation 	"This class represents the javax.wsdl.Message non-MOF interface"
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "addPart"
				quid       	"3B8972240273"
				parameters 	(list Parameters
				    (object Parameter "part"
					type       	"IPart"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getPart"
				quid       	"3B89723D0233"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"String"))
				result     	"IPart"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getParts"
				quid       	"3B897254025E"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getOrderedParts"
				quid       	"3B897261020D"
				parameters 	(list Parameters
				    (object Parameter "partOrder"
					type       	"IList"))
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Message"
				quid       	"3B84A8BC0260"
				stereotype 	"javaclass")))
		    (object Class "IPart"
			quid       	"3B84A93F01BE"
			documentation 	"This class represents the javax.wsdl.Part non-MOF interface"
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "setExtensionAttribute"
				quid       	"3C4688450052"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName")
				    (object Parameter "value"
					type       	"QName"))
				exceptions 	"WSDLException"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getExtensionAttributeNames"
				quid       	"3C468A0101C3"
				result     	"IIterator"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getExtensionAttribute"
				quid       	"3C468A2D02D5"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"QName"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Part"
				quid       	"3B84A9500231"
				stereotype 	"javaclass")))
		    (object Class "IService"
			quid       	"3B84AB490287"
			documentation 	"This class represents the javax.wsdl.Service non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "addPort"
				quid       	"3B895D5601D1"
				parameters 	(list Parameters
				    (object Parameter "port"
					type       	"IPort"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getPorts"
				quid       	"3B895DA20036"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getPort"
				quid       	"3B895DB001BC"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"String"))
				result     	"IPort"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Service"
				quid       	"3B84AB5B003E"
				stereotype 	"javaclass")))
		    (object Class "IPort"
			quid       	"3B84AB800326"
			documentation 	"This class represents the javax.wsdl.Port non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "getBinding"
				quid       	"3C8651F302B5"
				result     	"IBinding"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setBinding"
				quid       	"3C86526302F2"
				parameters 	(list Parameters
				    (object Parameter "binding"
					type       	"IBinding"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Port"
				quid       	"3B84AB8C0016"
				stereotype 	"javaclass")))
		    (object Class "IBinding"
			quid       	"3B84ABC60219"
			documentation 	"This class represents the javax.wsdl.Binding non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "addBindingOperation"
				quid       	"3B895F160153"
				parameters 	(list Parameters
				    (object Parameter "bindingOperation"
					type       	"IBindingOperation"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBindingOperation"
				quid       	"3B895F500066"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"String")
				    (object Parameter "inputName"
					type       	"String")
				    (object Parameter "outputName"
					type       	"String"))
				result     	"IBindingOperation"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBindingOperations"
				quid       	"3B895FA401C5"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getPortType"
				quid       	"3C8652A90284"
				result     	"IPortType"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setPortType"
				quid       	"3C8652BE01A8"
				parameters 	(list Parameters
				    (object Parameter "portType"
					type       	"IPortType"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Binding"
				quid       	"3B84ABCF0302"
				stereotype 	"javaclass")))
		    (object Class "IBindingOperation"
			quid       	"3B84ADC00072"
			documentation 	"This class represents the javax.wsdl.BindingOperation non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "addBindingFault"
				quid       	"3B8960BC0041"
				parameters 	(list Parameters
				    (object Parameter "bindingFault"
					type       	"IBindingFault"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBindingFault"
				quid       	"3B8960D9009D"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"String"))
				result     	"IBindingFault"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBindingFaults"
				quid       	"3B8960FC0061"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getOperation"
				quid       	"3C86532D0017"
				result     	"IOperation"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setOperation"
				quid       	"3C86533F037B"
				parameters 	(list Parameters
				    (object Parameter "operation"
					type       	"IOperation"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBindingInput"
				quid       	"3C86550900DA"
				result     	"IBindingInput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setBindingInput"
				quid       	"3C86551D007F"
				parameters 	(list Parameters
				    (object Parameter "bindingInput"
					type       	"IBindingInput"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBindingOutput"
				quid       	"3C8655340349"
				result     	"IBindingOutput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setBindingOutput"
				quid       	"3C86554702A6"
				parameters 	(list Parameters
				    (object Parameter "bindingOutput"
					type       	"IBindingOutput"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.BindingOperation"
				quid       	"3B84ADCB021C"
				stereotype 	"javaclass")))
		    (object Class "IBindingInput"
			quid       	"3B84ADEB0100"
			documentation 	"This class represents the javax.wsdl.BindingInput non-MOF interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.BindingInput"
				quid       	"3B84ADFE000D"
				stereotype 	"javaclass")))
		    (object Class "IBindingOutput"
			quid       	"3B84AE210111"
			documentation 	"This class represents the javax.wsdl.BindingOutput non-MOF interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.BindingOutput"
				quid       	"3B84AE2D0050"
				stereotype 	"javaclass")))
		    (object Class "IBindingFault"
			quid       	"3B84AE4F00BD"
			documentation 	"This class represents the javax.wsdl.BindingFault non-MOF interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.BindingFault"
				quid       	"3B84AE5F002A"
				stereotype 	"javaclass")))
		    (object Class "DOMElement"
			quid       	"3B84AF3203DB"
			documentation 	"This class represents the org.w3c.dom.Element non-MOF interface."
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "org.w3c.dom.Element"
				quid       	"3B84AF560292"
				stereotype 	"javaclass")))
		    (object Class "IExtensibilityElement"
			quid       	"3B84B12402AB"
			documentation 	"This class represents the javax.wsdl.ExtensibilityElement non-MOF interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.ExtensibilityElement"
				quid       	"3B84B13503D1"
				stereotype 	"javaclass")))
		    (object Class "IDefinition"
			quid       	"3B84B1D90142"
			documentation 	"This class represents the javax.wsdl.Definition non-MOF interface."
			stereotype 	"Interface"
			operations 	(list Operations
			    (object Operation "addBinding"
				quid       	"3B8988F1039D"
				parameters 	(list Parameters
				    (object Parameter "binding"
					type       	"IBinding"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "addImport"
				quid       	"3B8989490259"
				parameters 	(list Parameters
				    (object Parameter "importDef"
					type       	"IImport"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "addMessage"
				quid       	"3B89896E005E"
				parameters 	(list Parameters
				    (object Parameter "message"
					type       	"IMessage"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "addNamespace"
				quid       	"3B898984004B"
				parameters 	(list Parameters
				    (object Parameter "prefix"
					type       	"String")
				    (object Parameter "namespaceURI"
					type       	"String"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "addPortType"
				quid       	"3B8989C50045"
				parameters 	(list Parameters
				    (object Parameter "portType"
					type       	"IPortType"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "addService"
				quid       	"3B8989E401EE"
				parameters 	(list Parameters
				    (object Parameter "service"
					type       	"IService"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createBindingFault"
				quid       	"3B898A17038C"
				result     	"IBindingFault"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createBindingInput"
				quid       	"3B898A320286"
				result     	"IBindingInput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createBindingOutput"
				quid       	"3B898A46013B"
				result     	"IBindingOutput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createBindingOperation"
				quid       	"3B898A5C00B0"
				result     	"IBindingOperation"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createBinding"
				quid       	"3B8989FE037C"
				result     	"IBinding"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createFault"
				quid       	"3B898A7502E7"
				result     	"IFault"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createImport"
				quid       	"3B898A83014C"
				result     	"IImport"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createInput"
				quid       	"3B898A9D033E"
				result     	"IInput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createMessage"
				quid       	"3B898AAF0254"
				result     	"IMessage"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createOperation"
				quid       	"3B898AC203C4"
				result     	"IOperation"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createOutput"
				quid       	"3B898AE800ED"
				result     	"IOutput"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createPart"
				quid       	"3B898AF8026D"
				result     	"IPart"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createPort"
				quid       	"3B898B0801DA"
				result     	"IPort"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createPortType"
				quid       	"3B898B15039B"
				result     	"IPortType"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createService"
				quid       	"3B898B32013A"
				result     	"IService"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBinding"
				quid       	"3B898B420075"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IBinding"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getBindings"
				quid       	"3B898B920341"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getImports"
				quid       	"3B898BCD0060"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getImports"
				quid       	"3B898BE70144"
				parameters 	(list Parameters
				    (object Parameter "namespaceURI"
					type       	"String"))
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getMessage"
				quid       	"3B898C170107"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IMessage"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getMessages"
				quid       	"3B898C3E001D"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getNamespace"
				quid       	"3B898C62014B"
				parameters 	(list Parameters
				    (object Parameter "prefix"
					type       	"String"))
				result     	"String"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getNamespaces"
				quid       	"3B898C740115"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getPortType"
				quid       	"3B898CBE0071"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IPortType"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getPortTypes"
				quid       	"3B898CDA01C6"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getPrefix"
				quid       	"3B898CFD0017"
				parameters 	(list Parameters
				    (object Parameter "namespaceURI"
					type       	"String"))
				result     	"String"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getService"
				quid       	"3B898D2300A8"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IService"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getServices"
				quid       	"3B898D3B03CE"
				result     	"IMap"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getExtensionRegistry"
				quid       	"3B89D5B8012B"
				result     	"IExtensionRegistry"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setExtensionRegistry"
				quid       	"3B89D5D703BB"
				parameters 	(list Parameters
				    (object Parameter "extensionRegistry"
					type       	"IExtensionRegistry"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getDocumentBaseURI"
				quid       	"3B89D5FE0208"
				result     	"String"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setDocumentBaseURI"
				quid       	"3B89D6180328"
				parameters 	(list Parameters
				    (object Parameter "documentBase"
					type       	"String"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "createTypes"
				quid       	"3CADD0560080"
				result     	"ITypes"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "removeService"
				quid       	"3CADD07E004C"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IService"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "removeBinding"
				quid       	"3CADD0BA0355"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IBinding"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "removePortType"
				quid       	"3CADD0D8029A"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IPortType"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "removeMessage"
				quid       	"3CADD0FA0307"
				parameters 	(list Parameters
				    (object Parameter "name"
					type       	"QName"))
				result     	"IMessage"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getTypes"
				quid       	"3C86706F031B"
				result     	"ITypes"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "setTypes"
				quid       	"3C86709500EE"
				parameters 	(list Parameters
				    (object Parameter "types"
					type       	"ITypes"))
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Definition"
				quid       	"3B84B1E702A1"
				stereotype 	"javaclass")))
		    (object Class "IImport"
			quid       	"3B84B2020119"
			documentation 	"This class represents the javax.wsdl.Import non-MOF interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Import"
				quid       	"3B84B20C02EA"
				stereotype 	"javaclass")))
		    (object Class "IList"
			quid       	"3B85C0A203C5"
			documentation 	"This class represents the non-MOF java.util.List interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "java.util.List"
				quid       	"3B85C0AF0297"
				stereotype 	"javaclass")))
		    (object Class "IMap"
			quid       	"3B896B0300D4"
			documentation 	"This class represents the non-MOF java.util.Map interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "java.util.Map"
				quid       	"3B896B1102B5"
				stereotype 	"javaclass")))
		    (object Class "IURL"
			quid       	"3B89D5630274"
			documentation 	"This class represents the non-MOF java.net.URL interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "java.net.URL"
				quid       	"3B89D56E03E2"
				stereotype 	"javaclass")))
		    (object Class "IExtensionRegistry"
			quid       	"3B89D59302A5"
			documentation 	"This class represents the non-MOF javax.wsdl.extensions.ExtensionRegistry interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.extensions.ExtensionRegistry"
				quid       	"3B89D59F02E8"
				stereotype 	"javaclass")))
		    (object Class "Types"
			quid       	"3B8BE9A603A8"
			documentation 	"This class represents a WSDL types element. The types element encloses data type definitions that are relevant for the exchanged messages."
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B8BEB010311"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A")
			    (object Inheritance_Relationship
				quid       	"3CADCD3B0380"
				supplier   	"Logical View::wsdl::ITypes"
				quidu      	"3CADCBB20050"))
			operations 	(list Operations
			    (object Operation "getSchemas"
				quid       	"3CADCF3803E6"
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)
			    (object Operation "getSchemas"
				quid       	"3CADCF7E0301"
				parameters 	(list Parameters
				    (object Parameter "namespaceURI"
					type       	"String"))
				result     	"IList"
				concurrency 	"Sequential"
				opExportControl 	"Public"
				uid        	0)))
		    (object Class "IIterator"
			quid       	"3C4687DA0167"
			documentation 	"This class represents the non-MOF java.util.Iterator interface."
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "java.util.Iterator"
				quid       	"3C46880800B9"
				stereotype 	"javaclass")))
		    (object Class "WSDLException"
			quid       	"3C4689650313"
			documentation 	"This class represents the javax.wsdl.Exception class."
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.WSDLException"
				quid       	"3C4689740315"
				stereotype 	"javaclass")))
		    (object Class "ITypes"
			quid       	"3CADCBB20050"
			documentation 	"This class represents the javax.wsdl.Types non-MOF interface"
			stereotype 	"Interface"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "javax.wsdl.Types"
				quid       	"3CADCBF10173"
				stereotype 	"javaclass")))
		    (object Class "UnknownExtensibilityElement"
			quid       	"3CB24AC002AE"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3CB24AEC01CB"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")))
		    (object Class "XSDSchemaExtensibilityElement"
			quid       	"3CC360D7039C"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3CC3627F00B7"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9")))
		    (object Class "DOMDocument"
			quid       	"3CD1502C023B"
			documentation 	"This class represents the org.w3c.dom.Document non-MOF interface."
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "org.w3c.dom.Document"
				quid       	"3CD150600182"
				stereotype 	"javaclass")))
		    (object Class "MessageReference"
			quid       	"3F6771DB02DC"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3F762A6A0308"
				supplier   	"Logical View::wsdl::WSDLElement"
				quidu      	"3AD5C6A302DD"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3F6780A001AB"
				type       	"String"
				exportControl 	"Protected"))
			language   	"Java"
			abstract   	TRUE)
		    (object Association "$UNNAMED$0"
			quid       	"3AD5C824018C"
			roles      	(list role_list
			    (object Role "portType"
				quid       	"3AD5C82701C3"
				label      	"portType"
				supplier   	"Logical View::wsdl::PortType"
				quidu      	"3AD5C7F001A5"
				client_cardinality 	(value cardinality "1..1")
				Containment 	"By Value"
				is_aggregate 	TRUE)
			    (object Role "eOperations"
				quid       	"3AD5C82701CD"
				label      	"eOperations"
				supplier   	"Logical View::wsdl::Operation"
				quidu      	"3AD5C80D03CE"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$1"
			quid       	"3AD5CEBE00E2"
			roles      	(list role_list
			    (object Role "$UNNAMED$2"
				quid       	"3AD5CEBF0057"
				supplier   	"Logical View::wsdl::Message"
				quidu      	"3AD5C9590078"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "eParts"
				quid       	"3AD5CEBF0061"
				label      	"eParts"
				supplier   	"Logical View::wsdl::Part"
				quidu      	"3AD5CE1C032E"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$3"
			quid       	"3AD5D352010F"
			roles      	(list role_list
			    (object Role "ePortType"
				quid       	"3AD5D3540176"
				label      	"ePortType"
				supplier   	"Logical View::wsdl::PortType"
				quidu      	"3AD5C7F001A5"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$4"
				quid       	"3AD5D3540180"
				supplier   	"Logical View::wsdl::Binding"
				quidu      	"3AD5D2860261")))
		    (object Association "$UNNAMED$5"
			quid       	"3AD5D3E10179"
			roles      	(list role_list
			    (object Role "$UNNAMED$6"
				quid       	"3AD5D3E20225"
				supplier   	"Logical View::wsdl::Binding"
				quidu      	"3AD5D2860261"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "eBindingOperations"
				quid       	"3AD5D3E20239"
				label      	"eBindingOperations"
				supplier   	"Logical View::wsdl::BindingOperation"
				quidu      	"3AD5D3CB0145"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$7"
			quid       	"3AD5D425038A"
			roles      	(list role_list
			    (object Role "eOperation"
				quid       	"3AD5D42602F5"
				label      	"eOperation"
				supplier   	"Logical View::wsdl::Operation"
				quidu      	"3AD5C80D03CE"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$8"
				quid       	"3AD5D42602FF"
				supplier   	"Logical View::wsdl::BindingOperation"
				quidu      	"3AD5D3CB0145")))
		    (object Association "$UNNAMED$9"
			quid       	"3AD5D9400393"
			roles      	(list role_list
			    (object Role "ePorts"
				quid       	"3AD5D941031C"
				label      	"ePorts"
				supplier   	"Logical View::wsdl::Port"
				quidu      	"3AD5D9170286"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$10"
				quid       	"3AD5D941031D"
				supplier   	"Logical View::wsdl::Service"
				quidu      	"3AD5D8F002F8"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$11"
			quid       	"3AD5D9B8011F"
			roles      	(list role_list
			    (object Role "eBinding"
				quid       	"3AD5D9B9024D"
				label      	"eBinding"
				supplier   	"Logical View::wsdl::Binding"
				quidu      	"3AD5D2860261"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$12"
				quid       	"3AD5D9B90261"
				supplier   	"Logical View::wsdl::Port"
				quidu      	"3AD5D9170286")))
		    (object Association "$UNNAMED$13"
			quid       	"3AD5E60301E2"
			roles      	(list role_list
			    (object Role "$UNNAMED$14"
				quid       	"3AD5E60400B7"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "eMessages"
				quid       	"3AD5E60400C1"
				label      	"eMessages"
				supplier   	"Logical View::wsdl::Message"
				quidu      	"3AD5C9590078"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$15"
			quid       	"3AD5E6710104"
			roles      	(list role_list
			    (object Role "$UNNAMED$16"
				quid       	"3AD5E672034A"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "ePortTypes"
				quid       	"3AD5E6720354"
				label      	"ePortTypes"
				supplier   	"Logical View::wsdl::PortType"
				quidu      	"3AD5C7F001A5"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$17"
			quid       	"3AD5E6770095"
			roles      	(list role_list
			    (object Role "$UNNAMED$18"
				quid       	"3AD5E6780371"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "eBindings"
				quid       	"3AD5E678037B"
				label      	"eBindings"
				supplier   	"Logical View::wsdl::Binding"
				quidu      	"3AD5D2860261"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$19"
			quid       	"3AD5E67B0311"
			roles      	(list role_list
			    (object Role "$UNNAMED$20"
				quid       	"3AD5E67D007F"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "eServices"
				quid       	"3AD5E67D0089"
				label      	"eServices"
				supplier   	"Logical View::wsdl::Service"
				quidu      	"3AD5D8F002F8"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$21"
			quid       	"3AD5FD130079"
			roles      	(list role_list
			    (object Role "eExtensibilityElements"
				quid       	"3AD5FD14019D"
				label      	"eExtensibilityElements"
				supplier   	"Logical View::wsdl::ExtensibilityElement"
				quidu      	"3AD5DBB602A9"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$22"
				quid       	"3AD5FD14019E"
				supplier   	"Logical View::wsdl::ExtensibleElement"
				quidu      	"3AD5FCFA033A"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$23"
			quid       	"3ADF2E6401F5"
			roles      	(list role_list
			    (object Role "eBindingInput"
				quid       	"3ADF2E650251"
				label      	"eBindingInput"
				supplier   	"Logical View::wsdl::BindingInput"
				quidu      	"3AE08A8202D4"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$24"
				quid       	"3ADF2E650252"
				supplier   	"Logical View::wsdl::BindingOperation"
				quidu      	"3AD5D3CB0145"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$25"
			quid       	"3ADF2EB30163"
			roles      	(list role_list
			    (object Role "eBindingOutput"
				quid       	"3ADF2EB4013C"
				label      	"eBindingOutput"
				supplier   	"Logical View::wsdl::BindingOutput"
				quidu      	"3AE08A8F028C"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$26"
				quid       	"3ADF2EB4013D"
				supplier   	"Logical View::wsdl::BindingOperation"
				quidu      	"3AD5D3CB0145"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$27"
			quid       	"3ADF2F94024D"
			roles      	(list role_list
			    (object Role "eInput"
				quid       	"3ADF2F950190"
				label      	"eInput"
				supplier   	"Logical View::wsdl::Input"
				quidu      	"3AE0789F0059"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$28"
				quid       	"3ADF2F95019A"
				supplier   	"Logical View::wsdl::Operation"
				quidu      	"3AD5C80D03CE"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$29"
			quid       	"3ADF2FB802F9"
			roles      	(list role_list
			    (object Role "eOutput"
				quid       	"3ADF2FB9020A"
				label      	"eOutput"
				supplier   	"Logical View::wsdl::Output"
				quidu      	"3AE078B60232"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$30"
				quid       	"3ADF2FB9020B"
				supplier   	"Logical View::wsdl::Operation"
				quidu      	"3AD5C80D03CE"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$31"
			quid       	"3ADF331601A4"
			roles      	(list role_list
			    (object Role "eFaults"
				quid       	"3ADF33180387"
				label      	"eFaults"
				supplier   	"Logical View::wsdl::Fault"
				quidu      	"3AE078BE0108"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$32"
				quid       	"3ADF33180388"
				supplier   	"Logical View::wsdl::Operation"
				quidu      	"3AD5C80D03CE"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$33"
			quid       	"3ADF340003E5"
			roles      	(list role_list
			    (object Role "eBindingFaults"
				quid       	"3ADF340103AA"
				label      	"eBindingFaults"
				supplier   	"Logical View::wsdl::BindingFault"
				quidu      	"3AE08A9E03A6"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$34"
				quid       	"3ADF340103AB"
				supplier   	"Logical View::wsdl::BindingOperation"
				quidu      	"3AD5D3CB0145"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$35"
			quid       	"3AE091F402F3"
			roles      	(list role_list
			    (object Role "eFault"
				quid       	"3AE091F801FE"
				label      	"eFault"
				supplier   	"Logical View::wsdl::Fault"
				quidu      	"3AE078BE0108"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$36"
				quid       	"3AE091F801FF"
				supplier   	"Logical View::wsdl::BindingFault"
				quidu      	"3AE08A9E03A6")))
		    (object Association "$UNNAMED$37"
			quid       	"3AEA3D55002D"
			roles      	(list role_list
			    (object Role "$UNNAMED$38"
				quid       	"3AEA3D560328"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "eNamespaces"
				quid       	"3AEA3D560332"
				label      	"eNamespaces"
				supplier   	"Logical View::wsdl::Namespace"
				quidu      	"3AEA3CD30030"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$39"
			quid       	"3AEA3E3A002D"
			roles      	(list role_list
			    (object Role "eDefinition"
				quid       	"3AEA3E3C01E8"
				label      	"eDefinition"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$40"
				quid       	"3AEA3E3C01F2"
				supplier   	"Logical View::wsdl::Import"
				quidu      	"3AD5E4F903DE")))
		    (object Association "$UNNAMED$41"
			quid       	"3AEA412F0035"
			roles      	(list role_list
			    (object Role "eParameterOrdering"
				quid       	"3AEA41310255"
				label      	"eParameterOrdering"
				supplier   	"Logical View::wsdl::Part"
				quidu      	"3AD5CE1C032E"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$42"
				quid       	"3AEA4131025F"
				supplier   	"Logical View::wsdl::Operation"
				quidu      	"3AD5C80D03CE")))
		    (object Association "$UNNAMED$43"
			quid       	"3B84AD2400BD"
			roles      	(list role_list
			    (object Role "eInput"
				quid       	"3B84AD250083"
				label      	"eInput"
				supplier   	"Logical View::wsdl::Input"
				quidu      	"3AE0789F0059"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$44"
				quid       	"3B84AD250084"
				supplier   	"Logical View::wsdl::BindingInput"
				quidu      	"3AE08A8202D4")))
		    (object Association "$UNNAMED$45"
			quid       	"3B84AD7900F2"
			roles      	(list role_list
			    (object Role "eOutput"
				quid       	"3B84AD7A014D"
				label      	"eOutput"
				supplier   	"Logical View::wsdl::Output"
				quidu      	"3AE078B60232"
				client_cardinality 	(value cardinality "1..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$46"
				quid       	"3B84AD7A014E"
				supplier   	"Logical View::wsdl::BindingOutput"
				quidu      	"3AE08A8F028C")))
		    (object Association "$UNNAMED$47"
			quid       	"3B8B1BE900C4"
			roles      	(list role_list
			    (object Role "typeDefinition"
				quid       	"3B8B1BE90327"
				label      	"typeDefinition"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$48"
				quid       	"3B8B1BE90331"
				supplier   	"Logical View::wsdl::Part"
				quidu      	"3AD5CE1C032E")))
		    (object Association "$UNNAMED$49"
			quid       	"3B8B1C1203B2"
			roles      	(list role_list
			    (object Role "elementDeclaration"
				quid       	"3B8B1C14001C"
				label      	"elementDeclaration"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$50"
				quid       	"3B8B1C140026"
				supplier   	"Logical View::wsdl::Part"
				quidu      	"3AD5CE1C032E")))
		    (object Association "$UNNAMED$51"
			quid       	"3B8B1DCC02E5"
			roles      	(list role_list
			    (object Role "eSchema"
				quid       	"3B8B1DCE0270"
				label      	"eSchema"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$52"
				quid       	"3B8B1DCE027A"
				supplier   	"Logical View::wsdl::Import"
				quidu      	"3AD5E4F903DE")))
		    (object Association "$UNNAMED$53"
			quid       	"3B8BEA27029F"
			roles      	(list role_list
			    (object Role "$UNNAMED$54"
				quid       	"3B8BEA290356"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "eTypes"
				quid       	"3B8BEA29036A"
				label      	"eTypes"
				supplier   	"Logical View::wsdl::Types"
				quidu      	"3B8BE9A603A8"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$55"
			quid       	"3C46829303E5"
			roles      	(list role_list
			    (object Role "eMessage"
				quid       	"3C468296010E"
				label      	"eMessage"
				supplier   	"Logical View::wsdl::Message"
				quidu      	"3AD5C9590078"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$56"
				quid       	"3C4682960118"
				supplier   	"Logical View::wsdl::Part"
				quidu      	"3AD5CE1C032E")))
		    (object Association "$UNNAMED$57"
			quid       	"3C864DFF02EC"
			roles      	(list role_list
			    (object Role "eImports"
				quid       	"3C864DFF02ED"
				label      	"eImports"
				supplier   	"Logical View::wsdl::Import"
				quidu      	"3AD5E4F903DE"
				client_cardinality 	(value cardinality "0..n")
				Constraints 	"ordered"
				Containment 	"By Value"
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$58"
				quid       	"3C864DFF02EE"
				supplier   	"Logical View::wsdl::Definition"
				quidu      	"3AD5E43F008E"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)))
		    (object Association "$UNNAMED$59"
			quid       	"3CC3614500F2"
			roles      	(list role_list
			    (object Role "$UNNAMED$60"
				quid       	"3CC36146023D"
				supplier   	"Logical View::wsdl::XSDSchemaExtensibilityElement"
				quidu      	"3CC360D7039C"
				client_cardinality 	(value cardinality "1..1")
				is_aggregate 	TRUE)
			    (object Role "schema"
				quid       	"3CC36146023E"
				label      	"schema"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$61"
			quid       	"3F74E78401B1"
			roles      	(list role_list
			    (object Role "eMessage"
				quid       	"3F74E786000F"
				label      	"eMessage"
				supplier   	"Logical View::wsdl::Message"
				quidu      	"3AD5C9590078"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$62"
				quid       	"3F74E7860023"
				supplier   	"Logical View::wsdl::MessageReference"
				quidu      	"3F6771DB02DC")))
		    (object Association "$UNNAMED$63"
			quid       	"3F7896A2026E"
			roles      	(list role_list
			    (object Role "parent"
				quid       	"3F7896A7012B"
				label      	"parent"
				supplier   	"Logical View::wsdl::UnknownExtensibilityElement"
				quidu      	"3CB24AC002AE"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "children"
				quid       	"3F7896A7012C"
				label      	"children"
				supplier   	"Logical View::wsdl::UnknownExtensibilityElement"
				quidu      	"3CB24AC002AE"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE))))
		logical_presentations 	(list unit_reference_list
		    (object ClassDiagram "2.7 Services"
			quid       	"39AD3EF60127"
			title      	"2.7 Services"
			zoom       	90
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::IBinding" @28
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1424, 800)
				label      	(object ItemLabel
				    Parent_View 	@28
				    location   	(1173, 660)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	502
				    justify    	0
				    label      	"IBinding")
				stereotype 	(object ItemLabel
				    Parent_View 	@28
				    location   	(1173, 610)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	502
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84ABC60219"
				width      	520
				height     	404
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IPort" @29
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(816, 528)
				label      	(object ItemLabel
				    Parent_View 	@29
				    location   	(686, 481)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	260
				    justify    	0
				    label      	"IPort")
				stereotype 	(object ItemLabel
				    Parent_View 	@29
				    location   	(686, 431)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	260
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84AB800326"
				width      	278
				height     	218
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IService" @30
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 160)
				label      	(object ItemLabel
				    Parent_View 	@30
				    location   	(126, 90)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	228
				    justify    	0
				    label      	"IService")
				stereotype 	(object ItemLabel
				    Parent_View 	@30
				    location   	(126, 40)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	228
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84AB490287"
				width      	246
				height     	264
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Service" @31
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 528)
				label      	(object ItemLabel
				    Parent_View 	@31
				    location   	(44, 389)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	392
				    justify    	0
				    label      	"Service")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D8F002F8"
				width      	410
				height     	302
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @32
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B85954E01B4"
				client     	@31
				supplier   	@30
				line_style 	3
				origin_attachment 	(240, 377)
				terminal_attachment 	(240, 292))
			    (object ClassView "Class" "Logical View::wsdl::Binding" @33
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1440, 1264)
				label      	(object ItemLabel
				    Parent_View 	@33
				    location   	(1244, 1125)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	392
				    justify    	0
				    label      	"Binding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D2860261"
				width      	410
				height     	302
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @34
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8595410129"
				client     	@33
				supplier   	@28
				line_style 	3
				origin_attachment 	(1430, 1113)
				terminal_attachment 	(1430, 1002))
			    (object ClassView "Class" "Logical View::wsdl::Port" @35
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(816, 912)
				label      	(object ItemLabel
				    Parent_View 	@35
				    location   	(675, 840)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	282
				    justify    	0
				    label      	"Port")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D9170286"
				width      	300
				height     	168
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @36
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B85954502C9"
				client     	@35
				supplier   	@29
				line_style 	3
				origin_attachment 	(809, 828)
				terminal_attachment 	(809, 637))
			    (object AssociationViewNew "$UNNAMED$9" @37
				location   	(343, 916)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5D9400393"
				roleview_list 	(list RoleViews
				    (object RoleView "ePorts" @38
					Parent_View 	@37
					location   	(-121, 644)
					label      	(object SegLabel @39
					    Parent_View 	@38
					    location   	(413, 945)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	192
					    justify    	0
					    label      	"+ePorts"
					    pctDist    	0.218978
					    height     	29
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D941031C"
					client     	@37
					supplier   	@35
					line_style 	3
					origin_attachment 	(343, 916)
					terminal_attachment 	(666, 916)
					label      	(object SegLabel @40
					    Parent_View 	@38
					    location   	(539, 880)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	160
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.608000
					    height     	37
					    orientation 	0)
					label      	(object SegLabel @41
					    Parent_View 	@38
					    location   	(448, 990)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	146
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.328467
					    height     	74
					    orientation 	1))
				    (object RoleView "$UNNAMED$10" @42
					Parent_View 	@37
					location   	(-121, 644)
					label      	(object SegLabel @43
					    Parent_View 	@42
					    location   	(216, 744)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D941031D"
					client     	@37
					supplier   	@31
					vertices   	(list Points
					    (343, 916)
					    (257, 916)
					    (257, 679))
					line_style 	3
					origin_attachment 	(343, 916)
					terminal_attachment 	(257, 679)
					label      	(object SegLabel @44
					    Parent_View 	@42
					    location   	(301, 796)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.637097
					    height     	44
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$11" @45
				location   	(886, 1270)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5D9B8011F"
				roleview_list 	(list RoleViews
				    (object RoleView "eBinding" @46
					Parent_View 	@45
					location   	(38, 422)
					label      	(object SegLabel @47
					    Parent_View 	@46
					    location   	(1112, 1235)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+eBinding"
					    pctDist    	0.648571
					    height     	36
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D9B9024D"
					client     	@45
					supplier   	@33
					line_style 	3
					origin_attachment 	(886, 1270)
					terminal_attachment 	(1235, 1270)
					label      	(object SegLabel @48
					    Parent_View 	@46
					    location   	(1170, 1313)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.814286
					    height     	43
					    orientation 	1))
				    (object RoleView "$UNNAMED$12" @49
					Parent_View 	@45
					location   	(38, 422)
					label      	(object SegLabel @50
					    Parent_View 	@49
					    location   	(852, 1106)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	156
					    justify    	0
					    label      	""
					    pctDist    	0.687943
					    height     	40
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D9B90261"
					client     	@45
					supplier   	@35
					vertices   	(list Points
					    (886, 1270)
					    (812, 1270)
					    (812, 996))
					line_style 	3
					origin_attachment 	(886, 1270)
					terminal_attachment 	(812, 996))))))
		    (object ClassDiagram "2.5 Bindings"
			quid       	"39AD51270252"
			title      	"2.5 Bindings"
			zoom       	85
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::IBinding" @51
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(304, 240)
				label      	(object ItemLabel
				    Parent_View 	@51
				    location   	(73, 114)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	462
				    justify    	0
				    label      	"IBinding")
				stereotype 	(object ItemLabel
				    Parent_View 	@51
				    location   	(73, 64)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	462
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84ABC60219"
				width      	480
				height     	376
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IBindingOperation" @52
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(976, 352)
				label      	(object ItemLabel
				    Parent_View 	@52
				    location   	(780, 130)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	392
				    justify    	0
				    label      	"IBindingOperation")
				stereotype 	(object ItemLabel
				    Parent_View 	@52
				    location   	(780, 80)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	392
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84ADC00072"
				width      	410
				height     	568
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IBindingInput" @53
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(192, 1360)
				label      	(object ItemLabel
				    Parent_View 	@53
				    location   	(62, 1334)
				    fill_color 	16777215
				    nlines     	1
				    max_width  	260
				    justify    	0
				    label      	"IBindingInput")
				stereotype 	(object ItemLabel
				    Parent_View 	@53
				    location   	(62, 1284)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	260
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84ADEB0100"
				width      	278
				height     	176
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IBindingOutput" @54
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(208, 1664)
				label      	(object ItemLabel
				    Parent_View 	@54
				    location   	(61, 1638)
				    fill_color 	16777215
				    nlines     	1
				    max_width  	294
				    justify    	0
				    label      	"IBindingOutput")
				stereotype 	(object ItemLabel
				    Parent_View 	@54
				    location   	(61, 1588)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	294
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84AE210111"
				width      	312
				height     	176
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IBindingFault" @55
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(208, 1984)
				label      	(object ItemLabel
				    Parent_View 	@55
				    location   	(72, 1958)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	272
				    justify    	0
				    label      	"IBindingFault")
				stereotype 	(object ItemLabel
				    Parent_View 	@55
				    location   	(72, 1908)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	272
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84AE4F00BD"
				width      	290
				height     	176
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::PortType" @56
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1904, 624)
				label      	(object ItemLabel
				    Parent_View 	@56
				    location   	(1568, 486)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	673
				    justify    	0
				    label      	"PortType")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C7F001A5"
				width      	691
				height     	301
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Input" @57
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1904, 1360)
				label      	(object ItemLabel
				    Parent_View 	@57
				    location   	(1756, 1283)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	296
				    justify    	0
				    label      	"Input")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE0789F0059"
				width      	314
				height     	178
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Output" @58
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1904, 1664)
				label      	(object ItemLabel
				    Parent_View 	@58
				    location   	(1756, 1587)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	296
				    justify    	0
				    label      	"Output")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE078B60232"
				width      	314
				height     	178
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Binding" @59
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(304, 688)
				label      	(object ItemLabel
				    Parent_View 	@59
				    location   	(97, 539)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	414
				    justify    	0
				    label      	"Binding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D2860261"
				width      	432
				height     	322
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @60
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8595410129"
				client     	@59
				supplier   	@51
				line_style 	3
				origin_attachment 	(279, 527)
				terminal_attachment 	(279, 428))
			    (object AssociationViewNew "$UNNAMED$3" @61
				location   	(1039, 742)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5D352010F"
				roleview_list 	(list RoleViews
				    (object RoleView "ePortType" @62
					Parent_View 	@61
					location   	(575, 598)
					label      	(object SegLabel @63
					    Parent_View 	@62
					    location   	(1449, 781)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+ePortType"
					    pctDist    	0.789292
					    height     	39
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D3540176"
					client     	@61
					supplier   	@56
					line_style 	3
					origin_attachment 	(1039, 742)
					terminal_attachment 	(1559, 742)
					label      	(object SegLabel @64
					    Parent_View 	@62
					    location   	(1492, 716)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.872193
					    height     	27
					    orientation 	0))
				    (object RoleView "$UNNAMED$4" @65
					Parent_View 	@61
					location   	(575, 598)
					label      	(object SegLabel @66
					    Parent_View 	@65
					    location   	(776, 697)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	108
					    justify    	0
					    label      	""
					    pctDist    	0.509449
					    height     	46
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D3540180"
					client     	@61
					supplier   	@59
					line_style 	3
					origin_attachment 	(1039, 742)
					terminal_attachment 	(520, 742))))
			    (object ClassView "Class" "Logical View::wsdl::Operation" @67
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1888, 1024)
				label      	(object ItemLabel
				    Parent_View 	@67
				    location   	(1672, 851)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	432
				    justify    	0
				    label      	"Operation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C80D03CE"
				width      	450
				height     	370
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::BindingInput" @68
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(624, 1408)
				label      	(object ItemLabel
				    Parent_View 	@68
				    location   	(476, 1283)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	296
				    justify    	0
				    label      	"BindingInput")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE08A8202D4"
				width      	314
				height     	274
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$43" @69
				location   	(1264, 1359)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84AD2400BD"
				roleview_list 	(list RoleViews
				    (object RoleView "eInput" @70
					Parent_View 	@69
					location   	(96, 287)
					label      	(object SegLabel @71
					    Parent_View 	@70
					    location   	(1637, 1316)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	132
					    justify    	0
					    label      	"+eInput"
					    pctDist    	0.775148
					    height     	44
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B84AD250083"
					client     	@69
					supplier   	@57
					line_style 	3
					origin_attachment 	(1264, 1359)
					terminal_attachment 	(1747, 1359)
					label      	(object SegLabel @72
					    Parent_View 	@70
					    location   	(1694, 1398)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.889546
					    height     	39
					    orientation 	1))
				    (object RoleView "$UNNAMED$44" @73
					Parent_View 	@69
					location   	(96, 287)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B84AD250084"
					client     	@69
					supplier   	@68
					line_style 	3
					origin_attachment 	(1264, 1359)
					terminal_attachment 	(781, 1359))))
			    (object ClassView "Class" "Logical View::wsdl::BindingOutput" @74
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(960, 1664)
				label      	(object ItemLabel
				    Parent_View 	@74
				    location   	(812, 1539)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	296
				    justify    	0
				    label      	"BindingOutput")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE08A8F028C"
				width      	314
				height     	274
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$45" @75
				location   	(1432, 1654)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84AD7900F2"
				roleview_list 	(list RoleViews
				    (object RoleView "eOutput" @76
					Parent_View 	@75
					location   	(-120, 374)
					label      	(object SegLabel @77
					    Parent_View 	@76
					    location   	(1645, 1612)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+eOutput"
					    pctDist    	0.674772
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B84AD7A014D"
					client     	@75
					supplier   	@58
					line_style 	3
					origin_attachment 	(1432, 1654)
					terminal_attachment 	(1747, 1654)
					label      	(object SegLabel @78
					    Parent_View 	@76
					    location   	(1681, 1697)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.790274
					    height     	43
					    orientation 	1))
				    (object RoleView "$UNNAMED$46" @79
					Parent_View 	@75
					location   	(-120, 374)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B84AD7A014E"
					client     	@75
					supplier   	@74
					line_style 	3
					origin_attachment 	(1432, 1654)
					terminal_attachment 	(1117, 1654))))
			    (object ClassView "Class" "Logical View::wsdl::BindingOperation" @80
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(992, 1008)
				label      	(object ItemLabel
				    Parent_View 	@80
				    location   	(819, 931)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	346
				    justify    	0
				    label      	"BindingOperation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D3CB0145"
				width      	364
				height     	178
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @81
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84ADE401DC"
				client     	@80
				supplier   	@52
				line_style 	3
				origin_attachment 	(966, 919)
				terminal_attachment 	(966, 636))
			    (object AssociationViewNew "$UNNAMED$5" @82
				location   	(457, 1022)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5D3E10179"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$6" @83
					Parent_View 	@82
					location   	(-1319, 494)
					label      	(object SegLabel @84
					    Parent_View 	@83
					    location   	(235, 920)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D3E20225"
					client     	@82
					supplier   	@59
					vertices   	(list Points
					    (457, 1022)
					    (276, 1022)
					    (276, 849))
					line_style 	3
					origin_attachment 	(457, 1022)
					terminal_attachment 	(276, 849)
					label      	(object SegLabel @85
					    Parent_View 	@83
					    location   	(330, 884)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.900000
					    height     	54
					    orientation 	1))
				    (object RoleView "eBindingOperations" @86
					Parent_View 	@82
					location   	(-1319, 494)
					label      	(object SegLabel @87
					    Parent_View 	@86
					    location   	(531, 977)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	384
					    justify    	0
					    label      	"+eBindingOperations"
					    pctDist    	0.211699
					    height     	46
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D3E20239"
					client     	@82
					supplier   	@80
					line_style 	3
					origin_attachment 	(457, 1022)
					terminal_attachment 	(810, 1022)
					label      	(object SegLabel @88
					    Parent_View 	@86
					    location   	(769, 980)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.884956
					    height     	43
					    orientation 	0)
					label      	(object SegLabel @89
					    Parent_View 	@86
					    location   	(714, 1067)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	154
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.727564
					    height     	45
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$7" @90
				location   	(1418, 1040)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5D425038A"
				roleview_list 	(list RoleViews
				    (object RoleView "eOperation" @91
					Parent_View 	@90
					location   	(-358, 464)
					label      	(object SegLabel @92
					    Parent_View 	@91
					    location   	(1520, 1079)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	228
					    justify    	0
					    label      	"+eOperation"
					    pctDist    	0.420601
					    height     	39
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D42602F5"
					client     	@90
					supplier   	@67
					line_style 	3
					origin_attachment 	(1418, 1040)
					terminal_attachment 	(1663, 1040)
					label      	(object SegLabel @93
					    Parent_View 	@91
					    location   	(1589, 1005)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.696721
					    height     	36
					    orientation 	0))
				    (object RoleView "$UNNAMED$8" @94
					Parent_View 	@90
					location   	(-358, 464)
					label      	(object SegLabel @95
					    Parent_View 	@94
					    location   	(1273, 1070)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	192
					    justify    	0
					    label      	""
					    pctDist    	0.595420
					    height     	30
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5D42602FF"
					client     	@90
					supplier   	@80
					line_style 	3
					origin_attachment 	(1418, 1040)
					terminal_attachment 	(1174, 1040))))
			    (object AssociationViewNew "$UNNAMED$23" @96
				location   	(787, 1190)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3ADF2E6401F5"
				roleview_list 	(list RoleViews
				    (object RoleView "eBindingInput" @97
					Parent_View 	@96
					location   	(-381, 454)
					label      	(object SegLabel @98
					    Parent_View 	@97
					    location   	(669, 1152)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+eBindingInput"
					    pctDist    	0.511905
					    height     	39
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2E650251"
					client     	@96
					supplier   	@68
					vertices   	(list Points
					    (787, 1190)
					    (636, 1190)
					    (636, 1271))
					line_style 	3
					origin_attachment 	(787, 1190)
					terminal_attachment 	(636, 1271)
					label      	(object SegLabel @99
					    Parent_View 	@97
					    location   	(685, 1222)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.440476
					    height     	32
					    orientation 	0))
				    (object RoleView "$UNNAMED$24" @100
					Parent_View 	@96
					location   	(-381, 454)
					label      	(object SegLabel @101
					    Parent_View 	@100
					    location   	(885, 1144)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2E650252"
					client     	@96
					supplier   	@80
					vertices   	(list Points
					    (787, 1190)
					    (926, 1190)
					    (926, 1097))
					line_style 	3
					origin_attachment 	(787, 1190)
					terminal_attachment 	(926, 1097)
					label      	(object SegLabel @102
					    Parent_View 	@100
					    location   	(871, 1136)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.837758
					    height     	56
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$25" @103
				location   	(1024, 1312)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3ADF2EB30163"
				roleview_list 	(list RoleViews
				    (object RoleView "eBindingOutput" @104
					Parent_View 	@103
					location   	(-150, 578)
					label      	(object SegLabel @105
					    Parent_View 	@104
					    location   	(1012, 1429)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	306
					    justify    	0
					    label      	"+eBindingOutput"
					    pctDist    	0.545082
					    height     	13
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2EB4013C"
					client     	@103
					supplier   	@74
					line_style 	3
					origin_attachment 	(1024, 1312)
					terminal_attachment 	(1024, 1527)
					label      	(object SegLabel @106
					    Parent_View 	@104
					    location   	(967, 1479)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.774590
					    height     	58
					    orientation 	1))
				    (object RoleView "$UNNAMED$26" @107
					Parent_View 	@103
					location   	(-150, 578)
					label      	(object SegLabel @108
					    Parent_View 	@107
					    location   	(983, 1140)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2EB4013D"
					client     	@103
					supplier   	@80
					line_style 	3
					origin_attachment 	(1024, 1312)
					terminal_attachment 	(1024, 1097)
					label      	(object SegLabel @109
					    Parent_View 	@107
					    location   	(1031, 1186)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.590164
					    height     	7
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::wsdl::Fault" @110
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1920, 1984)
				label      	(object ItemLabel
				    Parent_View 	@110
				    location   	(1772, 1907)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	296
				    justify    	0
				    label      	"Fault")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE078BE0108"
				width      	314
				height     	178
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::BindingFault" @111
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1360, 1984)
				label      	(object ItemLabel
				    Parent_View 	@111
				    location   	(1212, 1859)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	296
				    justify    	0
				    label      	"BindingFault")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE08A9E03A6"
				width      	314
				height     	274
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @112
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84AE710333"
				client     	@111
				supplier   	@55
				line_style 	3
				origin_attachment 	(1203, 2007)
				terminal_attachment 	(353, 2007))
			    (object AssociationViewNew "$UNNAMED$33" @113
				location   	(1356, 1352)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3ADF340003E5"
				roleview_list 	(list RoleViews
				    (object RoleView "eBindingFaults" @114
					Parent_View 	@113
					location   	(188, 616)
					label      	(object SegLabel @115
					    Parent_View 	@114
					    location   	(1382, 1750)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	300
					    justify    	0
					    label      	"+eBindingFaults"
					    pctDist    	0.803150
					    height     	26
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF340103AA"
					client     	@113
					supplier   	@111
					line_style 	3
					origin_attachment 	(1356, 1352)
					terminal_attachment 	(1356, 1847)
					label      	(object SegLabel @116
					    Parent_View 	@114
					    location   	(1409, 1797)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.899194
					    height     	53
					    orientation 	0)
					label      	(object SegLabel @117
					    Parent_View 	@114
					    location   	(1256, 1806)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	154
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.919291
					    height     	101
					    orientation 	1))
				    (object RoleView "$UNNAMED$34" @118
					Parent_View 	@113
					location   	(188, 616)
					label      	(object SegLabel @119
					    Parent_View 	@118
					    location   	(1076, 1197)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF340103AB"
					client     	@113
					supplier   	@80
					vertices   	(list Points
					    (1356, 1352)
					    (1356, 1217)
					    (1117, 1217)
					    (1117, 1097))
					line_style 	3
					origin_attachment 	(1356, 1352)
					terminal_attachment 	(1117, 1097)
					label      	(object SegLabel @120
					    Parent_View 	@118
					    location   	(1152, 1164)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.687008
					    height     	54
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$35" @121
				location   	(1640, 1970)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE091F402F3"
				roleview_list 	(list RoleViews
				    (object RoleView "eFault" @122
					Parent_View 	@121
					location   	(-344, 818)
					label      	(object SegLabel @123
					    Parent_View 	@122
					    location   	(1674, 1915)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	144
					    justify    	0
					    label      	"+eFault"
					    pctDist    	0.276423
					    height     	56
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AE091F801FE"
					client     	@121
					supplier   	@110
					line_style 	3
					origin_attachment 	(1640, 1970)
					terminal_attachment 	(1763, 1970)
					label      	(object SegLabel @124
					    Parent_View 	@122
					    location   	(1718, 2012)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.642276
					    height     	42
					    orientation 	1))
				    (object RoleView "$UNNAMED$36" @125
					Parent_View 	@121
					location   	(-344, 818)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AE091F801FF"
					client     	@121
					supplier   	@111
					line_style 	3
					origin_attachment 	(1640, 1970)
					terminal_attachment 	(1517, 1970))))
			    (object InheritView "" @126
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84AE4302AB"
				client     	@74
				supplier   	@54
				line_style 	3
				origin_attachment 	(803, 1656)
				terminal_attachment 	(364, 1656))
			    (object InheritView "" @127
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84AE1B0113"
				client     	@68
				supplier   	@53
				line_style 	3
				origin_attachment 	(467, 1385)
				terminal_attachment 	(331, 1385))))
		    (object ClassDiagram "2.4 PortTypes"
			quid       	"3AD5D1C40366"
			title      	"2.4 PortTypes"
			documentation 	"This class represents the non-MOF java.util.Iterator interface."
			zoom       	80
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::IPortType" @128
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(496, 208)
				label      	(object ItemLabel
				    Parent_View 	@128
				    location   	(146, 172)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	700
				    justify    	0
				    label      	"IPortType")
				stereotype 	(object ItemLabel
				    Parent_View 	@128
				    location   	(146, 122)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	700
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84A5BE0331"
				width      	718
				height     	196
				annotation 	8)
			    (object ClassView "Class" "Logical View::wsdl::IOperation" @129
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1552, 208)
				label      	(object ItemLabel
				    Parent_View 	@129
				    location   	(1116, 176)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	873
				    justify    	0
				    label      	"IOperation")
				stereotype 	(object ItemLabel
				    Parent_View 	@129
				    location   	(1116, 126)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	873
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84A77600D1"
				width      	891
				height     	188
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IInput" @130
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(368, 1472)
				label      	(object ItemLabel
				    Parent_View 	@130
				    location   	(55, 1437)
				    fill_color 	16777215
				    nlines     	1
				    max_width  	626
				    justify    	0
				    label      	"IInput")
				stereotype 	(object ItemLabel
				    Parent_View 	@130
				    location   	(55, 1387)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	626
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84A7EE0015"
				width      	644
				height     	194
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IOutput" @131
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(384, 1792)
				label      	(object ItemLabel
				    Parent_View 	@131
				    location   	(56, 1757)
				    fill_color 	16777215
				    nlines     	1
				    max_width  	656
				    justify    	0
				    label      	"IOutput")
				stereotype 	(object ItemLabel
				    Parent_View 	@131
				    location   	(56, 1707)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	656
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84A829027D"
				width      	674
				height     	194
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IFault" @132
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(368, 2112)
				label      	(object ItemLabel
				    Parent_View 	@132
				    location   	(55, 2076)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	626
				    justify    	0
				    label      	"IFault")
				stereotype 	(object ItemLabel
				    Parent_View 	@132
				    location   	(55, 2026)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	626
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84A861031D"
				width      	644
				height     	196
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::PortType" @133
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(496, 800)
				label      	(object ItemLabel
				    Parent_View 	@133
				    location   	(158, 672)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	677
				    justify    	0
				    label      	"PortType")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C7F001A5"
				width      	695
				height     	281
				annotation 	8)
			    (object ClassView "Class" "Logical View::wsdl::Part" @134
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2576, 800)
				label      	(object ItemLabel
				    Parent_View 	@134
				    location   	(2325, 692)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	502
				    justify    	0
				    label      	"Part")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5CE1C032E"
				width      	520
				height     	240
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Fault" @135
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1728, 2112)
				label      	(object ItemLabel
				    Parent_View 	@135
				    location   	(1647, 2060)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	162
				    justify    	0
				    label      	"Fault")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE078BE0108"
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Input" @136
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1056, 1472)
				label      	(object ItemLabel
				    Parent_View 	@136
				    location   	(870, 1422)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	372
				    justify    	0
				    label      	"Input")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE0789F0059"
				width      	390
				height     	125
				annotation 	8)
			    (object ClassView "Class" "Logical View::wsdl::Output" @137
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1360, 1792)
				label      	(object ItemLabel
				    Parent_View 	@137
				    location   	(1232, 1742)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	256
				    justify    	0
				    label      	"Output")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE078B60232"
				width      	274
				height     	125
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Operation" @138
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1552, 784)
				label      	(object ItemLabel
				    Parent_View 	@138
				    location   	(1214, 620)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	677
				    justify    	0
				    label      	"Operation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C80D03CE"
				width      	695
				height     	352
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$0" @139
				location   	(1024, 797)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5C824018C"
				roleview_list 	(list RoleViews
				    (object RoleView "eOperations" @140
					Parent_View 	@139
					location   	(592, 269)
					label      	(object SegLabel @141
					    Parent_View 	@140
					    location   	(1088, 748)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	249
					    justify    	0
					    label      	"+eOperations"
					    pctDist    	0.359649
					    height     	50
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5C82701CD"
					client     	@139
					supplier   	@138
					line_style 	3
					origin_attachment 	(1024, 797)
					terminal_attachment 	(1205, 797)
					label      	(object SegLabel @142
					    Parent_View 	@140
					    location   	(1176, 861)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.840391
					    height     	64
					    orientation 	1)
					label      	(object SegLabel @143
					    Parent_View 	@140
					    location   	(1074, 923)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	164
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.276243
					    height     	126
					    orientation 	1))
				    (object RoleView "portType" @144
					Parent_View 	@139
					location   	(592, 269)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5C82701C3"
					client     	@139
					supplier   	@133
					line_style 	3
					origin_attachment 	(1024, 797)
					terminal_attachment 	(843, 797)
					label      	(object SegLabel @145
					    Parent_View 	@144
					    location   	(888, 757)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.753488
					    height     	41
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$41" @146
				location   	(2107, 773)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AEA412F0035"
				roleview_list 	(list RoleViews
				    (object RoleView "eParameterOrdering" @147
					Parent_View 	@146
					location   	(1819, 101)
					label      	(object SegLabel @148
					    Parent_View 	@147
					    location   	(2145, 647)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+eParameterOrdering"
					    pctDist    	0.183333
					    height     	127
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AEA41310255"
					client     	@146
					supplier   	@134
					line_style 	3
					origin_attachment 	(2107, 773)
					terminal_attachment 	(2316, 773)
					label      	(object SegLabel @149
					    Parent_View 	@147
					    location   	(2272, 822)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.796610
					    height     	49
					    orientation 	1)
					label      	(object SegLabel @150
					    Parent_View 	@147
					    location   	(2171, 888)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	164
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.306220
					    height     	115
					    orientation 	1))
				    (object RoleView "$UNNAMED$42" @151
					Parent_View 	@146
					location   	(1819, 101)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AEA4131025F"
					client     	@146
					supplier   	@138
					line_style 	3
					origin_attachment 	(2107, 773)
					terminal_attachment 	(1899, 773))))
			    (object AssociationViewNew "$UNNAMED$31" @152
				location   	(1702, 1504)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3ADF331601A4"
				roleview_list 	(list RoleViews
				    (object RoleView "eFaults" @153
					Parent_View 	@152
					location   	(1414, 832)
					label      	(object SegLabel @154
					    Parent_View 	@153
					    location   	(1815, 1982)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+eFaults"
					    pctDist    	0.878992
					    height     	113
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF33180387"
					client     	@152
					supplier   	@135
					line_style 	3
					origin_attachment 	(1702, 1504)
					terminal_attachment 	(1702, 2048)
					label      	(object SegLabel @155
					    Parent_View 	@153
					    location   	(1644, 2020)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.949580
					    height     	59
					    orientation 	1)
					label      	(object SegLabel @156
					    Parent_View 	@153
					    location   	(1593, 1963)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	164
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.845378
					    height     	110
					    orientation 	1))
				    (object RoleView "$UNNAMED$32" @157
					Parent_View 	@152
					location   	(1414, 832)
					label      	(object SegLabel @158
					    Parent_View 	@157
					    location   	(1661, 1069)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF33180388"
					client     	@152
					supplier   	@138
					line_style 	3
					origin_attachment 	(1702, 1504)
					terminal_attachment 	(1702, 960)
					label      	(object SegLabel @159
					    Parent_View 	@157
					    location   	(1821, 1039)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.857362
					    height     	119
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$27" @160
				location   	(1178, 1234)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3ADF2F94024D"
				roleview_list 	(list RoleViews
				    (object RoleView "eInput" @161
					Parent_View 	@160
					location   	(890, 562)
					label      	(object SegLabel @162
					    Parent_View 	@161
					    location   	(878, 1343)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	132
					    justify    	0
					    label      	"+eInput"
					    pctDist    	0.819820
					    height     	103
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2F950190"
					client     	@160
					supplier   	@136
					vertices   	(list Points
					    (1178, 1234)
					    (980, 1234)
					    (980, 1410))
					line_style 	3
					origin_attachment 	(1178, 1234)
					terminal_attachment 	(980, 1410)
					label      	(object SegLabel @163
					    Parent_View 	@161
					    location   	(1046, 1364)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.877660
					    height     	66
					    orientation 	0))
				    (object RoleView "$UNNAMED$28" @164
					Parent_View 	@160
					location   	(890, 562)
					label      	(object SegLabel @165
					    Parent_View 	@164
					    location   	(1236, 1036)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2F95019A"
					client     	@160
					supplier   	@138
					vertices   	(list Points
					    (1178, 1234)
					    (1277, 1234)
					    (1277, 960))
					line_style 	3
					origin_attachment 	(1178, 1234)
					terminal_attachment 	(1277, 960)
					label      	(object SegLabel @166
					    Parent_View 	@164
					    location   	(1197, 1058)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.736413
					    height     	81
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$29" @167
				location   	(1468, 1345)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3ADF2FB802F9"
				roleview_list 	(list RoleViews
				    (object RoleView "eOutput" @168
					Parent_View 	@167
					location   	(1180, 673)
					label      	(object SegLabel @169
					    Parent_View 	@168
					    location   	(1362, 1669)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+eOutput"
					    pctDist    	0.840909
					    height     	107
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2FB9020A"
					client     	@167
					supplier   	@137
					line_style 	3
					origin_attachment 	(1468, 1345)
					terminal_attachment 	(1468, 1730)
					label      	(object SegLabel @170
					    Parent_View 	@168
					    location   	(1546, 1676)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.863636
					    height     	78
					    orientation 	0))
				    (object RoleView "$UNNAMED$30" @171
					Parent_View 	@167
					location   	(1180, 673)
					label      	(object SegLabel @172
					    Parent_View 	@171
					    location   	(1427, 1037)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3ADF2FB9020B"
					client     	@167
					supplier   	@138
					line_style 	3
					origin_attachment 	(1468, 1345)
					terminal_attachment 	(1468, 960)
					label      	(object SegLabel @173
					    Parent_View 	@171
					    location   	(1523, 1080)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.690341
					    height     	55
					    orientation 	1))))
			    (object InheritView "" @174
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F6F1FD8019F"
				client     	@133
				supplier   	@128
				line_style 	0)
			    (object InheritView "" @175
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F6F1FE20171"
				client     	@138
				supplier   	@129
				line_style 	0)
			    (object InheritView "" @176
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F6F1FEE031D"
				client     	@136
				supplier   	@130
				line_style 	0)
			    (object InheritView "" @177
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F6F1FF801CD"
				client     	@137
				supplier   	@131
				line_style 	0)
			    (object InheritView "" @178
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F6F2002002D"
				client     	@135
				supplier   	@132
				line_style 	0)
			    (object ClassView "Class" "Logical View::wsdl::Message" @179
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2224, 1456)
				label      	(object ItemLabel
				    Parent_View 	@179
				    location   	(1937, 1312)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	575
				    justify    	0
				    label      	"Message")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C9590078"
				width      	593
				height     	312
				annotation 	8)
			    (object ClassView "Class" "Logical View::wsdl::MessageReference" @180
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1520, 2544)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@180
				    location   	(1193, 2466)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	654
				    justify    	0
				    label      	"MessageReference")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3F6771DB02DC"
				width      	672
				height     	180
				annotation 	8)
			    (object InheritTreeView "" @181
				location   	(1524, 2275)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@180
				vertices   	(list Points
				    (1524, 2275)
				    (1524, 2454)))
			    (object InheritView "" @182
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F67723D0319"
				client     	@135
				supplier   	@180
				line_style 	3
				origin_attachment 	(1776, 2176)
				terminal_attachment 	(1776, 2275)
				drawSupplier 	@181)
			    (object InheritView "" @183
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F67723500DD"
				client     	@137
				supplier   	@180
				line_style 	3
				origin_attachment 	(1371, 1854)
				terminal_attachment 	(1371, 2275)
				drawSupplier 	@181)
			    (object InheritView "" @184
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F67722802E7"
				client     	@136
				supplier   	@180
				line_style 	3
				origin_attachment 	(980, 1534)
				terminal_attachment 	(980, 2275)
				drawSupplier 	@181)
			    (object AssociationViewNew "$UNNAMED$61" @185
				location   	(2206, 2259)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F74E78401B1"
				roleview_list 	(list RoleViews
				    (object RoleView "eMessage" @186
					Parent_View 	@185
					location   	(734, -285)
					label      	(object SegLabel @187
					    Parent_View 	@186
					    location   	(2068, 1670)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+eMessage"
					    pctDist    	0.912230
					    height     	139
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3F74E786000F"
					client     	@185
					supplier   	@179
					line_style 	3
					origin_attachment 	(2206, 2259)
					terminal_attachment 	(2206, 1612)
					label      	(object SegLabel @188
					    Parent_View 	@186
					    location   	(2260, 1678)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.900000
					    height     	54
					    orientation 	1))
				    (object RoleView "$UNNAMED$62" @189
					Parent_View 	@185
					location   	(734, -285)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3F74E7860023"
					client     	@185
					supplier   	@180
					vertices   	(list Points
					    (2206, 2259)
					    (2206, 2556)
					    (1856, 2556))
					line_style 	3
					origin_attachment 	(2206, 2259)
					terminal_attachment 	(1856, 2556))))))
		    (object ClassDiagram "2.1 Definitions"
			quid       	"3AD5E48A0262"
			title      	"2.1 Definitions"
			zoom       	83
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::IDefinition" @190
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(432, 192)
				label      	(object ItemLabel
				    Parent_View 	@190
				    location   	(88, 161)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	688
				    justify    	0
				    label      	"IDefinition")
				stereotype 	(object ItemLabel
				    Parent_View 	@190
				    location   	(88, 111)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	688
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84B1D90142"
				width      	706
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Types" @191
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1824, 944)
				label      	(object ItemLabel
				    Parent_View 	@191
				    location   	(1686, 896)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	276
				    justify    	0
				    label      	"Types")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B8BE9A603A8"
				width      	294
				height     	120
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Import" @192
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2144, 624)
				label      	(object ItemLabel
				    Parent_View 	@192
				    location   	(1910, 545)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	468
				    justify    	0
				    label      	"Import")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5E4F903DE"
				width      	486
				height     	182
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Message" @193
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				location   	(2112, 1184)
				label      	(object ItemLabel
				    Parent_View 	@193
				    location   	(1900, 1056)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	424
				    justify    	0
				    label      	"Message")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C9590078"
				width      	442
				height     	280
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::PortType" @194
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				location   	(1808, 1488)
				label      	(object ItemLabel
				    Parent_View 	@194
				    location   	(1596, 1360)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	424
				    justify    	0
				    label      	"PortType")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C7F001A5"
				width      	442
				height     	280
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Binding" @195
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				location   	(2336, 1728)
				label      	(object ItemLabel
				    Parent_View 	@195
				    location   	(2124, 1600)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	424
				    justify    	0
				    label      	"Binding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D2860261"
				width      	442
				height     	280
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Definition" @196
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1328, 240)
				label      	(object ItemLabel
				    Parent_View 	@196
				    location   	(1073, 39)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	510
				    justify    	0
				    label      	"Definition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5E43F008E"
				width      	528
				height     	426
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$53" @197
				location   	(1358, 860)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8BEA27029F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$54" @198
					Parent_View 	@197
					location   	(62, -36)
					label      	(object SegLabel @199
					    Parent_View 	@198
					    location   	(1317, 535)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8BEA290356"
					client     	@197
					supplier   	@196
					line_style 	3
					origin_attachment 	(1358, 860)
					terminal_attachment 	(1358, 453)
					label      	(object SegLabel @200
					    Parent_View 	@198
					    location   	(1403, 511)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.856649
					    height     	45
					    orientation 	1))
				    (object RoleView "eTypes" @201
					Parent_View 	@197
					location   	(62, -36)
					label      	(object SegLabel @202
					    Parent_View 	@201
					    location   	(1586, 909)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	156
					    justify    	0
					    label      	"+eTypes"
					    pctDist    	0.779097
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8BEA29036A"
					client     	@197
					supplier   	@191
					vertices   	(list Points
					    (1358, 860)
					    (1358, 948)
					    (1677, 948))
					line_style 	3
					origin_attachment 	(1358, 860)
					terminal_attachment 	(1677, 948)
					label      	(object SegLabel @203
					    Parent_View 	@201
					    location   	(1632, 987)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.892655
					    height     	39
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$57" @204
				location   	(1612, 595)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C864DFF02EC"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$58" @205
					Parent_View 	@204
					location   	(12, 227)
					label      	(object SegLabel @206
					    Parent_View 	@205
					    location   	(1423, 512)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C864DFF02EE"
					client     	@204
					supplier   	@196
					vertices   	(list Points
					    (1612, 595)
					    (1464, 595)
					    (1464, 453))
					line_style 	3
					origin_attachment 	(1612, 595)
					terminal_attachment 	(1464, 453)
					label      	(object SegLabel @207
					    Parent_View 	@205
					    location   	(1524, 495)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.858667
					    height     	60
					    orientation 	1))
				    (object RoleView "eImports" @208
					Parent_View 	@204
					location   	(12, 227)
					label      	(object SegLabel @209
					    Parent_View 	@208
					    location   	(1692, 557)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	204
					    justify    	0
					    label      	"+eImports"
					    pctDist    	0.280335
					    height     	39
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C864DFF02ED"
					client     	@204
					supplier   	@192
					line_style 	3
					origin_attachment 	(1612, 595)
					terminal_attachment 	(1901, 595)
					label      	(object SegLabel @210
					    Parent_View 	@208
					    location   	(1854, 652)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.841004
					    height     	57
					    orientation 	1)
					label      	(object SegLabel @211
					    Parent_View 	@208
					    location   	(1676, 646)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	158
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.225941
					    height     	51
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$13" @212
				location   	(1279, 1137)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5E60301E2"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$14" @213
					Parent_View 	@212
					location   	(271, 273)
					label      	(object SegLabel @214
					    Parent_View 	@213
					    location   	(1238, 591)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E60400B7"
					client     	@212
					supplier   	@196
					line_style 	3
					origin_attachment 	(1279, 1137)
					terminal_attachment 	(1279, 453)
					label      	(object SegLabel @215
					    Parent_View 	@213
					    location   	(1320, 586)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.804974
					    height     	41
					    orientation 	1))
				    (object RoleView "eMessages" @216
					Parent_View 	@212
					location   	(271, 273)
					label      	(object SegLabel @217
					    Parent_View 	@216
					    location   	(1647, 1171)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+eMessages"
					    pctDist    	0.643137
					    height     	38
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E60400C1"
					client     	@212
					supplier   	@193
					vertices   	(list Points
					    (1279, 1137)
					    (1279, 1208)
					    (1891, 1208))
					line_style 	3
					origin_attachment 	(1279, 1137)
					terminal_attachment 	(1891, 1208)
					label      	(object SegLabel @218
					    Parent_View 	@216
					    location   	(1821, 1171)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.899346
					    height     	38
					    orientation 	0)
					label      	(object SegLabel @219
					    Parent_View 	@216
					    location   	(1797, 1244)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	158
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.864407
					    height     	36
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$15" @220
				location   	(1212, 1159)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5E6710104"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$16" @221
					Parent_View 	@220
					location   	(-324, 215)
					label      	(object SegLabel @222
					    Parent_View 	@221
					    location   	(1171, 594)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E672034A"
					client     	@220
					supplier   	@196
					line_style 	3
					origin_attachment 	(1212, 1159)
					terminal_attachment 	(1212, 453)
					label      	(object SegLabel @223
					    Parent_View 	@221
					    location   	(1251, 624)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.757962
					    height     	39
					    orientation 	1))
				    (object RoleView "ePortTypes" @224
					Parent_View 	@220
					location   	(-324, 215)
					label      	(object SegLabel @225
					    Parent_View 	@224
					    location   	(1391, 1451)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+ePortTypes"
					    pctDist    	0.723698
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E6720354"
					client     	@220
					supplier   	@194
					vertices   	(list Points
					    (1212, 1159)
					    (1212, 1490)
					    (1587, 1490))
					line_style 	3
					origin_attachment 	(1212, 1159)
					terminal_attachment 	(1587, 1490)
					label      	(object SegLabel @226
					    Parent_View 	@224
					    location   	(1533, 1451)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.925611
					    height     	40
					    orientation 	0)
					label      	(object SegLabel @227
					    Parent_View 	@224
					    location   	(1512, 1540)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	158
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.895855
					    height     	50
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$17" @228
				location   	(1114, 1585)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5E6770095"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$18" @229
					Parent_View 	@228
					location   	(-406, 241)
					label      	(object SegLabel @230
					    Parent_View 	@229
					    location   	(1073, 680)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E6780371"
					client     	@228
					supplier   	@196
					line_style 	3
					origin_attachment 	(1114, 1585)
					terminal_attachment 	(1114, 453)
					label      	(object SegLabel @231
					    Parent_View 	@229
					    location   	(1155, 752)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.736704
					    height     	41
					    orientation 	1))
				    (object RoleView "eBindings" @232
					Parent_View 	@228
					location   	(-406, 241)
					label      	(object SegLabel @233
					    Parent_View 	@232
					    location   	(1851, 1674)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	204
					    justify    	0
					    label      	"+eBindings"
					    pctDist    	0.766347
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E678037B"
					client     	@228
					supplier   	@195
					vertices   	(list Points
					    (1114, 1585)
					    (1114, 1716)
					    (2115, 1716))
					line_style 	3
					origin_attachment 	(1114, 1585)
					terminal_attachment 	(2115, 1716)
					label      	(object SegLabel @234
					    Parent_View 	@232
					    location   	(2053, 1677)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.945074
					    height     	40
					    orientation 	0)
					label      	(object SegLabel @235
					    Parent_View 	@232
					    location   	(2014, 1754)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	158
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.911072
					    height     	38
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::wsdl::Service" @236
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				location   	(1840, 2048)
				label      	(object ItemLabel
				    Parent_View 	@236
				    location   	(1628, 1920)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	424
				    justify    	0
				    label      	"Service")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D8F002F8"
				width      	442
				height     	280
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$19" @237
				location   	(1066, 1533)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5E67B0311"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$20" @238
					Parent_View 	@237
					location   	(-521, -111)
					label      	(object SegLabel @239
					    Parent_View 	@238
					    location   	(1025, 669)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E67D007F"
					client     	@237
					supplier   	@196
					line_style 	3
					origin_attachment 	(1066, 1533)
					terminal_attachment 	(1066, 453)
					label      	(object SegLabel @240
					    Parent_View 	@238
					    location   	(1109, 756)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.719697
					    height     	43
					    orientation 	1))
				    (object RoleView "eServices" @241
					Parent_View 	@237
					location   	(-521, -111)
					label      	(object SegLabel @242
					    Parent_View 	@241
					    location   	(1393, 2028)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	204
					    justify    	0
					    label      	"+eServices"
					    pctDist    	0.791824
					    height     	32
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5E67D0089"
					client     	@237
					supplier   	@236
					vertices   	(list Points
					    (1066, 1533)
					    (1066, 2059)
					    (1619, 2059))
					line_style 	3
					origin_attachment 	(1066, 1533)
					terminal_attachment 	(1619, 2059)
					label      	(object SegLabel @243
					    Parent_View 	@241
					    location   	(1554, 2031)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.940197
					    height     	29
					    orientation 	0)
					label      	(object SegLabel @244
					    Parent_View 	@241
					    location   	(1532, 2113)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	158
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.920515
					    height     	54
					    orientation 	1))))
			    (object InheritView "" @245
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84B1F80382"
				client     	@196
				supplier   	@190
				line_style 	3
				origin_attachment 	(1064, 263)
				terminal_attachment 	(785, 263))))
		    (object ClassDiagram "2.1.3 Extensibility"
			quid       	"3AD60C510192"
			title      	"2.1.3 Extensibility"
			zoom       	80
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::Binding" @246
				ShowCompartmentStereotypes 	TRUE
				location   	(576, 1584)
				label      	(object ItemLabel
				    Parent_View 	@246
				    location   	(494, 1531)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	164
				    justify    	0
				    label      	"Binding")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D2860261"
				width      	182
				height     	130
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Port" @247
				ShowCompartmentStereotypes 	TRUE
				location   	(1568, 1888)
				label      	(object ItemLabel
				    Parent_View 	@247
				    location   	(1487, 1836)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	162
				    justify    	0
				    label      	"Port")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D9170286"
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Service" @248
				ShowCompartmentStereotypes 	TRUE
				location   	(1424, 1728)
				label      	(object ItemLabel
				    Parent_View 	@248
				    location   	(1342, 1675)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	164
				    justify    	0
				    label      	"Service")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D8F002F8"
				width      	182
				height     	130
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::BindingFault" @249
				ShowCompartmentStereotypes 	TRUE
				location   	(1216, 2336)
				label      	(object ItemLabel
				    Parent_View 	@249
				    location   	(1088, 2283)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	256
				    justify    	0
				    label      	"BindingFault")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE08A9E03A6"
				width      	274
				height     	130
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::BindingOperation" @250
				ShowCompartmentStereotypes 	TRUE
				location   	(736, 1760)
				label      	(object ItemLabel
				    Parent_View 	@250
				    location   	(563, 1707)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	346
				    justify    	0
				    label      	"BindingOperation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5D3CB0145"
				width      	364
				height     	130
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IExtensibilityElement" @251
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1888, 160)
				label      	(object ItemLabel
				    Parent_View 	@251
				    location   	(1495, 136)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	786
				    justify    	0
				    label      	"IExtensibilityElement")
				stereotype 	(object ItemLabel
				    Parent_View 	@251
				    location   	(1495, 86)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	786
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84B12402AB"
				width      	804
				height     	172
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::BindingInput" @252
				ShowCompartmentStereotypes 	TRUE
				location   	(928, 1952)
				label      	(object ItemLabel
				    Parent_View 	@252
				    location   	(800, 1899)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	256
				    justify    	0
				    label      	"BindingInput")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE08A8202D4"
				width      	274
				height     	130
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::BindingOutput" @253
				ShowCompartmentStereotypes 	TRUE
				location   	(1008, 2144)
				label      	(object ItemLabel
				    Parent_View 	@253
				    location   	(863, 2091)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	290
				    justify    	0
				    label      	"BindingOutput")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AE08A8F028C"
				width      	308
				height     	130
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Definition" @254
				ShowCompartmentStereotypes 	TRUE
				location   	(176, 1296)
				label      	(object ItemLabel
				    Parent_View 	@254
				    location   	(74, 1235)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	204
				    justify    	0
				    label      	"Definition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5E43F008E"
				width      	222
				height     	146
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Types" @255
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				location   	(416, 1408)
				label      	(object ItemLabel
				    Parent_View 	@255
				    location   	(335, 1356)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	162
				    justify    	0
				    label      	"Types")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B8BE9A603A8"
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::ExtensibleElement" @256
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(480, 688)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@256
				    location   	(209, 580)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	542
				    justify    	0
				    label      	"ExtensibleElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5FCFA033A"
				width      	560
				height     	240
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @257
				location   	(480, 1039)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@256
				vertices   	(list Points
				    (480, 1039)
				    (480, 808)))
			    (object InheritView "" @258
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD600CB00AA"
				client     	@247
				supplier   	@256
				line_style 	3
				origin_attachment 	(1566, 1824)
				terminal_attachment 	(1566, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @259
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B85B5A4027E"
				client     	@253
				supplier   	@256
				line_style 	3
				origin_attachment 	(1097, 2079)
				terminal_attachment 	(1097, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @260
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AE0938602C9"
				client     	@249
				supplier   	@256
				line_style 	3
				origin_attachment 	(1219, 2271)
				terminal_attachment 	(1219, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @261
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B85B59B0072"
				client     	@252
				supplier   	@256
				line_style 	3
				origin_attachment 	(988, 1887)
				terminal_attachment 	(988, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @262
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD6009202F7"
				client     	@250
				supplier   	@256
				line_style 	3
				origin_attachment 	(797, 1695)
				terminal_attachment 	(797, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @263
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5FA0F02F0"
				client     	@246
				supplier   	@256
				line_style 	3
				origin_attachment 	(601, 1519)
				terminal_attachment 	(601, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @264
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5FDB803D4"
				client     	@254
				supplier   	@256
				line_style 	3
				origin_attachment 	(211, 1223)
				terminal_attachment 	(211, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @265
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8BEB010311"
				client     	@255
				supplier   	@256
				line_style 	3
				origin_attachment 	(414, 1344)
				terminal_attachment 	(414, 1039)
				drawSupplier 	@257)
			    (object InheritView "" @266
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5FA20025E"
				client     	@248
				supplier   	@256
				line_style 	3
				origin_attachment 	(1429, 1663)
				terminal_attachment 	(1429, 1039)
				drawSupplier 	@257)
			    (object ClassView "Class" "Logical View::wsdl::ExtensibilityElement" @267
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1904, 688)
				label      	(object ItemLabel
				    Parent_View 	@267
				    location   	(1632, 583)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	545
				    justify    	0
				    label      	"ExtensibilityElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5DBB602A9"
				width      	563
				height     	234
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$21" @268
				location   	(1191, 672)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5FD130079"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$22" @269
					Parent_View 	@268
					location   	(23, 560)
					label      	(object SegLabel @270
					    Parent_View 	@269
					    location   	(847, 631)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5FD14019E"
					client     	@268
					supplier   	@256
					line_style 	3
					origin_attachment 	(1191, 672)
					terminal_attachment 	(760, 672)
					label      	(object SegLabel @271
					    Parent_View 	@269
					    location   	(830, 628)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.839695
					    height     	45
					    orientation 	1))
				    (object RoleView "eExtensibilityElements" @272
					Parent_View 	@268
					location   	(23, 560)
					label      	(object SegLabel @273
					    Parent_View 	@272
					    location   	(1355, 522)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	"+eExtensibilityElements"
					    pctDist    	0.379070
					    height     	151
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5FD14019D"
					client     	@268
					supplier   	@267
					line_style 	3
					origin_attachment 	(1191, 672)
					terminal_attachment 	(1623, 672)
					label      	(object SegLabel @274
					    Parent_View 	@272
					    location   	(1496, 627)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.709402
					    height     	46
					    orientation 	0)
					label      	(object SegLabel @275
					    Parent_View 	@272
					    location   	(1463, 764)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	164
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.632479
					    height     	92
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::wsdl::WSDLElement" @276
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				location   	(1008, 192)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@276
				    location   	(630, 84)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	756
				    justify    	0
				    label      	"WSDLElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C6A302DD"
				width      	774
				height     	240
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @277
				location   	(1008, 402)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@276
				vertices   	(list Points
				    (1008, 402)
				    (1008, 312)))
			    (object InheritView "" @278
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5FE3C03D4"
				client     	@256
				supplier   	@276
				line_style 	3
				origin_attachment 	(492, 568)
				terminal_attachment 	(492, 402)
				drawSupplier 	@277)
			    (object InheritView "" @279
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84B14903D0"
				client     	@267
				supplier   	@251
				line_style 	3
				origin_attachment 	(2015, 571)
				terminal_attachment 	(2015, 246))
			    (object InheritView "" @280
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BDDF53502C3"
				client     	@267
				supplier   	@276
				line_style 	3
				origin_attachment 	(1762, 571)
				terminal_attachment 	(1762, 402)
				drawSupplier 	@277)
			    (object ClassView "Class" "Logical View::wsdl::UnknownExtensibilityElement" @281
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2016, 1360)
				label      	(object ItemLabel
				    Parent_View 	@281
				    location   	(1731, 1307)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	570
				    justify    	0
				    label      	"UnknownExtensibilityElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3CB24AC002AE"
				width      	588
				height     	130
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @282
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3CB24AEC01CB"
				client     	@281
				supplier   	@267
				line_style 	3
				origin_attachment 	(1796, 1295)
				terminal_attachment 	(1796, 805))
			    (object AssociationViewNew "$UNNAMED$63" @283
				location   	(2311, 1686)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F7896A2026E"
				roleview_list 	(list RoleViews
				    (object RoleView "parent" @284
					Parent_View 	@283
					location   	(279, 294)
					label      	(object SegLabel @285
					    Parent_View 	@284
					    location   	(2422, 1333)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	144
					    justify    	0
					    label      	"+parent"
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3F7896A7012B"
					client     	@283
					supplier   	@281
					vertices   	(list Points
					    (2311, 1686)
					    (2432, 1686)
					    (2432, 1374)
					    (2310, 1374))
					line_style 	3
					origin_attachment 	(2311, 1686)
					terminal_attachment 	(2310, 1374)
					label      	(object SegLabel @286
					    Parent_View 	@284
					    location   	(2366, 1428)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.900000
					    height     	54
					    orientation 	0))
				    (object RoleView "children" @287
					Parent_View 	@283
					location   	(279, 294)
					label      	(object SegLabel @288
					    Parent_View 	@287
					    location   	(1899, 1537)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+children"
					    pctDist    	0.798561
					    height     	118
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3F7896A7012C"
					client     	@283
					supplier   	@281
					vertices   	(list Points
					    (2311, 1686)
					    (2016, 1686)
					    (2016, 1425))
					line_style 	3
					origin_attachment 	(2311, 1686)
					terminal_attachment 	(2016, 1425)
					label      	(object SegLabel @289
					    Parent_View 	@287
					    location   	(2070, 1481)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.900000
					    height     	54
					    orientation 	1))))))
		    (object ClassDiagram "2.1.1 Naming and Linking"
			quid       	"3AE8ED7201BD"
			title      	"2.1.1 Naming and Linking"
			zoom       	90
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::IImport" @290
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1712, 224)
				label      	(object ItemLabel
				    Parent_View 	@290
				    location   	(1422, 177)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	580
				    justify    	0
				    label      	"IImport")
				stereotype 	(object ItemLabel
				    Parent_View 	@290
				    location   	(1422, 127)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	580
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84B2020119"
				width      	598
				height     	218
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Namespace" @291
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(432, 1136)
				label      	(object ItemLabel
				    Parent_View 	@291
				    location   	(202, 1041)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	461
				    justify    	0
				    label      	"Namespace")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AEA3CD30030"
				width      	479
				height     	215
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @292
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1632, 1216)
				label      	(object ItemLabel
				    Parent_View 	@292
				    location   	(1294, 1142)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	676
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	694
				height     	173
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Definition" @293
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				location   	(400, 384)
				label      	(object ItemLabel
				    Parent_View 	@293
				    location   	(164, 236)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	472
				    justify    	0
				    label      	"Definition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5E43F008E"
				width      	490
				height     	320
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$37" @294
				location   	(309, 786)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AEA3D55002D"
				roleview_list 	(list RoleViews
				    (object RoleView "eNamespaces" @295
					Parent_View 	@294
					location   	(-91, 258)
					label      	(object SegLabel @296
					    Parent_View 	@295
					    location   	(461, 956)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	288
					    justify    	0
					    label      	"+eNamespaces"
					    pctDist    	0.698842
					    height     	152
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AEA3D560332"
					client     	@294
					supplier   	@291
					line_style 	3
					origin_attachment 	(309, 786)
					terminal_attachment 	(309, 1029)
					label      	(object SegLabel @297
					    Parent_View 	@295
					    location   	(248, 973)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.768707
					    height     	62
					    orientation 	1)
					label      	(object SegLabel @298
					    Parent_View 	@295
					    location   	(228, 913)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	146
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.525097
					    height     	82
					    orientation 	1))
				    (object RoleView "$UNNAMED$38" @299
					Parent_View 	@294
					location   	(-91, 258)
					label      	(object SegLabel @300
					    Parent_View 	@299
					    location   	(268, 592)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	192
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AEA3D560328"
					client     	@294
					supplier   	@293
					line_style 	3
					origin_attachment 	(309, 786)
					terminal_attachment 	(309, 544)
					label      	(object SegLabel @301
					    Parent_View 	@299
					    location   	(239, 583)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.844961
					    height     	71
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::wsdl::Import" @302
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1472, 720)
				label      	(object ItemLabel
				    Parent_View 	@302
				    location   	(1255, 580)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	434
				    justify    	0
				    label      	"Import")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5E4F903DE"
				width      	452
				height     	304
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$51" @303
				location   	(1486, 1001)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8B1DCC02E5"
				roleview_list 	(list RoleViews
				    (object RoleView "eSchema" @304
					Parent_View 	@303
					location   	(510, -103)
					label      	(object SegLabel @305
					    Parent_View 	@304
					    location   	(1737, 1018)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	204
					    justify    	0
					    label      	"+eSchema"
					    pctDist    	0.592593
					    height     	105
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8B1DCE0270"
					client     	@303
					supplier   	@292
					vertices   	(list Points
					    (1486, 1001)
					    (1632, 1001)
					    (1632, 1130))
					line_style 	3
					origin_attachment 	(1486, 1001)
					terminal_attachment 	(1632, 1130)
					label      	(object SegLabel @306
					    Parent_View 	@304
					    location   	(1563, 1018)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.592593
					    height     	70
					    orientation 	1))
				    (object RoleView "$UNNAMED$52" @307
					Parent_View 	@303
					location   	(510, -103)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8B1DCE027A"
					client     	@303
					supplier   	@302
					line_style 	3
					origin_attachment 	(1486, 1000)
					terminal_attachment 	(1486, 872))))
			    (object AssociationViewNew "$UNNAMED$39" @308
				location   	(1087, 403)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AEA3E3A002D"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$40" @309
					Parent_View 	@308
					location   	(687, -125)
					label      	(object SegLabel @310
					    Parent_View 	@309
					    location   	(1406, 480)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AEA3E3C01F2"
					client     	@308
					supplier   	@302
					vertices   	(list Points
					    (1087, 403)
					    (1364, 403)
					    (1364, 568))
					line_style 	3
					origin_attachment 	(1087, 403)
					terminal_attachment 	(1364, 568))
				    (object RoleView "eDefinition" @311
					Parent_View 	@308
					location   	(687, -125)
					label      	(object SegLabel @312
					    Parent_View 	@311
					    location   	(805, 363)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+eDefinition"
					    pctDist    	0.637532
					    height     	41
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AEA3E3C01E8"
					client     	@308
					supplier   	@293
					line_style 	3
					origin_attachment 	(1087, 403)
					terminal_attachment 	(645, 403)
					label      	(object SegLabel @313
					    Parent_View 	@311
					    location   	(727, 456)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.814910
					    height     	53
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$57" @314
				location   	(737, 826)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C864DFF02EC"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$58" @315
					Parent_View 	@314
					location   	(-671, 106)
					label      	(object SegLabel @316
					    Parent_View 	@315
					    location   	(552, 647)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C864DFF02EE"
					client     	@314
					supplier   	@293
					vertices   	(list Points
					    (737, 826)
					    (510, 826)
					    (510, 544))
					line_style 	3
					origin_attachment 	(737, 826)
					terminal_attachment 	(510, 544)
					label      	(object SegLabel @317
					    Parent_View 	@315
					    location   	(457, 595)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.900000
					    height     	54
					    orientation 	0))
				    (object RoleView "eImports" @318
					Parent_View 	@314
					location   	(-671, 106)
					label      	(object SegLabel @319
					    Parent_View 	@318
					    location   	(1144, 773)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+eImports"
					    pctDist    	0.799189
					    height     	54
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C864DFF02ED"
					client     	@314
					supplier   	@302
					line_style 	3
					origin_attachment 	(737, 826)
					terminal_attachment 	(1246, 826)
					label      	(object SegLabel @320
					    Parent_View 	@318
					    location   	(1180, 879)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.872211
					    height     	53
					    orientation 	1)
					label      	(object SegLabel @321
					    Parent_View 	@318
					    location   	(1162, 933)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	146
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.837728
					    height     	107
					    orientation 	1))))
			    (object InheritView "" @322
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3F6F200D0340"
				client     	@302
				supplier   	@290
				line_style 	3
				origin_attachment 	(1555, 568)
				terminal_attachment 	(1555, 333))))
		    (object ClassDiagram "2.2 Types"
			quid       	"3B85AE59037E"
			title      	"2.2 Types"
			zoom       	90
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	81
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @323
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1136, 1232)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@323
				    location   	(895, 1157)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	482
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ECD302A9"
				width      	500
				height     	174
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @324
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1136, 1600)
				label      	(object ItemLabel
				    Parent_View 	@324
				    location   	(906, 1531)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	460
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				width      	478
				height     	162
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Message" @325
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1280, 1968)
				label      	(object ItemLabel
				    Parent_View 	@325
				    location   	(1022, 1828)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	517
				    justify    	0
				    label      	"Message")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C9590078"
				width      	535
				height     	305
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Part" @326
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(352, 1184)
				label      	(object ItemLabel
				    Parent_View 	@326
				    location   	(128, 1067)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	448
				    justify    	0
				    label      	"Part")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5CE1C032E"
				width      	466
				height     	258
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$47" @327
				location   	(735, 1172)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8B1BE900C4"
				roleview_list 	(list RoleViews
				    (object RoleView "typeDefinition" @328
					Parent_View 	@327
					location   	(143, 676)
					label      	(object SegLabel @329
					    Parent_View 	@328
					    location   	(775, 1133)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+typeDefinition"
					    pctDist    	0.269006
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8B1BE90327"
					client     	@327
					supplier   	@323
					line_style 	3
					origin_attachment 	(735, 1172)
					terminal_attachment 	(886, 1172)
					label      	(object SegLabel @330
					    Parent_View 	@328
					    location   	(839, 1207)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.688705
					    height     	35
					    orientation 	1))
				    (object RoleView "$UNNAMED$48" @331
					Parent_View 	@327
					location   	(143, 676)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8B1BE90331"
					client     	@327
					supplier   	@326
					line_style 	3
					origin_attachment 	(735, 1172)
					terminal_attachment 	(585, 1172))))
			    (object AssociationViewNew "$UNNAMED$49" @332
				location   	(527, 1592)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8B1C1203B2"
				roleview_list 	(list RoleViews
				    (object RoleView "elementDeclaration" @333
					Parent_View 	@332
					location   	(-65, 1096)
					label      	(object SegLabel @334
					    Parent_View 	@333
					    location   	(666, 1554)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+elementDeclaration"
					    pctDist    	0.375394
					    height     	39
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8B1C14001C"
					client     	@332
					supplier   	@324
					line_style 	3
					origin_attachment 	(527, 1592)
					terminal_attachment 	(897, 1592)
					label      	(object SegLabel @335
					    Parent_View 	@333
					    location   	(807, 1645)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.755877
					    height     	53
					    orientation 	1))
				    (object RoleView "$UNNAMED$50" @336
					Parent_View 	@332
					location   	(-65, 1096)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8B1C140026"
					client     	@332
					supplier   	@326
					vertices   	(list Points
					    (527, 1592)
					    (437, 1592)
					    (437, 1313))
					line_style 	3
					origin_attachment 	(527, 1592)
					terminal_attachment 	(437, 1313))))
			    (object AssociationViewNew "$UNNAMED$55" @337
				location   	(322, 1911)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C46829303E5"
				roleview_list 	(list RoleViews
				    (object RoleView "eMessage" @338
					Parent_View 	@337
					location   	(-14, 1191)
					label      	(object SegLabel @339
					    Parent_View 	@338
					    location   	(838, 1872)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+eMessage"
					    pctDist    	0.748560
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C468296010E"
					client     	@337
					supplier   	@325
					line_style 	3
					origin_attachment 	(322, 1911)
					terminal_attachment 	(1013, 1911)
					label      	(object SegLabel @340
					    Parent_View 	@338
					    location   	(943, 1965)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.900000
					    height     	54
					    orientation 	1))
				    (object RoleView "$UNNAMED$56" @341
					Parent_View 	@337
					location   	(-14, 1191)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C4682960118"
					client     	@337
					supplier   	@326
					vertices   	(list Points
					    (322, 1911)
					    (229, 1911)
					    (229, 1313))
					line_style 	3
					origin_attachment 	(322, 1911)
					terminal_attachment 	(229, 1313))))
			    (object ClassView "Class" "Logical View::wsdl::Types" @342
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(800, 608)
				label      	(object ItemLabel
				    Parent_View 	@342
				    location   	(615, 512)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	371
				    justify    	0
				    label      	"Types")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B8BE9A603A8"
				width      	389
				height     	216
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::Definition" @343
				ShowCompartmentStereotypes 	TRUE
				location   	(176, 160)
				label      	(object ItemLabel
				    Parent_View 	@343
				    location   	(74, 107)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	204
				    justify    	0
				    label      	"Definition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5E43F008E"
				width      	222
				height     	130
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$53" @344
				location   	(234, 604)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8BEA27029F"
				roleview_list 	(list RoleViews
				    (object RoleView "eTypes" @345
					Parent_View 	@344
					location   	(-150, 396)
					label      	(object SegLabel @346
					    Parent_View 	@345
					    location   	(480, 640)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	207
					    justify    	0
					    label      	"+eTypes"
					    pctDist    	0.661017
					    height     	36
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8BEA29036A"
					client     	@344
					supplier   	@342
					line_style 	3
					origin_attachment 	(234, 604)
					terminal_attachment 	(606, 604)
					label      	(object SegLabel @347
					    Parent_View 	@345
					    location   	(526, 569)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.783883
					    height     	36
					    orientation 	0))
				    (object RoleView "$UNNAMED$54" @348
					Parent_View 	@344
					location   	(-150, 396)
					label      	(object SegLabel @349
					    Parent_View 	@348
					    location   	(133, 313)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B8BEA290356"
					client     	@344
					supplier   	@343
					vertices   	(list Points
					    (234, 604)
					    (174, 604)
					    (174, 225))
					line_style 	3
					origin_attachment 	(234, 604)
					terminal_attachment 	(174, 225)
					label      	(object SegLabel @350
					    Parent_View 	@348
					    location   	(228, 271)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.897729
					    height     	54
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::wsdl::ITypes" @351
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(640, 224)
				label      	(object ItemLabel
				    Parent_View 	@351
				    location   	(525, 203)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	230
				    justify    	0
				    label      	"ITypes")
				stereotype 	(object ItemLabel
				    Parent_View 	@351
				    location   	(525, 153)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	230
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3CADCBB20050"
				width      	248
				height     	166
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::XSDSchemaExtensibilityElement" @352
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1728, 800)
				label      	(object ItemLabel
				    Parent_View 	@352
				    location   	(1359, 753)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	739
				    justify    	0
				    label      	"XSDSchemaExtensibilityElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3CC360D7039C"
				width      	757
				height     	118
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @353
				ShowCompartmentStereotypes 	TRUE
				IncludeOperation 	TRUE
				location   	(1856, 1216)
				label      	(object ItemLabel
				    Parent_View 	@353
				    location   	(1529, 1103)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	655
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	673
				height     	250
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$59" @354
				location   	(1826, 975)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3CC3614500F2"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$60" @355
					Parent_View 	@354
					location   	(306, 447)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3CC36146023D"
					client     	@354
					supplier   	@352
					line_style 	3
					origin_attachment 	(1826, 975)
					terminal_attachment 	(1826, 859)
					label      	(object SegLabel @356
					    Parent_View 	@355
					    location   	(1774, 900)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.656489
					    height     	53
					    orientation 	0))
				    (object RoleView "schema" @357
					Parent_View 	@354
					location   	(306, 447)
					label      	(object SegLabel @358
					    Parent_View 	@357
					    location   	(2006, 1033)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+schema"
					    pctDist    	0.507576
					    height     	180
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3CC36146023E"
					client     	@354
					supplier   	@353
					line_style 	3
					origin_attachment 	(1826, 975)
					terminal_attachment 	(1826, 1091)
					label      	(object SegLabel @359
					    Parent_View 	@357
					    location   	(1788, 1050)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.651515
					    height     	39
					    orientation 	1))))
			    (object InheritView "" @360
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3CADCD3B0380"
				client     	@342
				supplier   	@351
				line_style 	3
				origin_attachment 	(705, 500)
				terminal_attachment 	(705, 307))
			    (object ClassView "Class" "Logical View::wsdl::ExtensibleElement" @361
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1056, 224)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@361
				    location   	(815, 130)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	482
				    justify    	0
				    label      	"ExtensibleElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5FCFA033A"
				width      	500
				height     	212
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @362
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B8BEB010311"
				client     	@342
				supplier   	@361
				line_style 	3
				origin_attachment 	(854, 500)
				terminal_attachment 	(854, 330))
			    (object ClassView "Class" "Logical View::wsdl::ExtensibilityElement" @363
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				location   	(1824, 464)
				label      	(object ItemLabel
				    Parent_View 	@363
				    location   	(1490, 368)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	669
				    justify    	0
				    label      	"ExtensibilityElement")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5DBB602A9"
				width      	687
				height     	216
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$21" @364
				location   	(1206, 493)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5FD130079"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$22" @365
					Parent_View 	@364
					location   	(-586, 237)
					label      	(object SegLabel @366
					    Parent_View 	@365
					    location   	(1136, 386)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5FD14019E"
					client     	@364
					supplier   	@361
					vertices   	(list Points
					    (1206, 493)
					    (1094, 493)
					    (1094, 330))
					line_style 	3
					origin_attachment 	(1206, 493)
					terminal_attachment 	(1094, 330)
					label      	(object SegLabel @367
					    Parent_View 	@365
					    location   	(1042, 377)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.828326
					    height     	53
					    orientation 	0))
				    (object RoleView "eExtensibilityElements" @368
					Parent_View 	@364
					location   	(-586, 237)
					label      	(object SegLabel @369
					    Parent_View 	@368
					    location   	(1196, 454)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	444
					    justify    	0
					    label      	"+eExtensibilityElements"
					    pctDist    	-0.039711
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5FD14019D"
					client     	@364
					supplier   	@363
					line_style 	3
					origin_attachment 	(1206, 493)
					terminal_attachment 	(1481, 493)
					label      	(object SegLabel @370
					    Parent_View 	@368
					    location   	(1415, 546)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.764957
					    height     	53
					    orientation 	1)
					label      	(object SegLabel @371
					    Parent_View 	@368
					    location   	(1396, 392)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	146
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.694915
					    height     	102
					    orientation 	0))))
			    (object InheritView "" @372
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3CC3627F00B7"
				client     	@352
				supplier   	@363
				line_style 	3
				origin_attachment 	(1812, 741)
				terminal_attachment 	(1812, 572))))
		    (object ClassDiagram "2.3 Messages"
			quid       	"3BCE853D02C8"
			title      	"2.3 Messages"
			zoom       	85
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::wsdl::IMessage" @373
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(448, 224)
				label      	(object ItemLabel
				    Parent_View 	@373
				    location   	(267, 122)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	362
				    justify    	0
				    label      	"IMessage")
				stereotype 	(object ItemLabel
				    Parent_View 	@373
				    location   	(267, 72)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	362
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84A8AF004F"
				width      	380
				height     	328
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::wsdl::IPart" @374
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1328, 224)
				label      	(object ItemLabel
				    Parent_View 	@374
				    location   	(1029, 124)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	599
				    justify    	0
				    label      	"IPart")
				stereotype 	(object ItemLabel
				    Parent_View 	@374
				    location   	(1029, 74)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	599
				    justify    	0
				    label      	"<<Interface>>")
				icon       	"Interface"
				icon_style 	"Label"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B84A93F01BE"
				width      	617
				height     	324
				annotation 	8)
			    (object ClassView "Class" "Logical View::wsdl::Part" @375
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1312, 816)
				label      	(object ItemLabel
				    Parent_View 	@375
				    location   	(1075, 690)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	474
				    justify    	0
				    label      	"Part")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5CE1C032E"
				width      	492
				height     	276
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @376
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84A96D02F1"
				client     	@375
				supplier   	@374
				line_style 	3
				origin_attachment 	(1304, 678)
				terminal_attachment 	(1304, 386))
			    (object ClassView "Class" "Logical View::wsdl::Message" @377
				ShowCompartmentStereotypes 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(448, 656)
				label      	(object ItemLabel
				    Parent_View 	@377
				    location   	(241, 507)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	414
				    justify    	0
				    label      	"Message")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3AD5C9590078"
				width      	432
				height     	322
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @378
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B84A8D102BA"
				client     	@377
				supplier   	@373
				line_style 	3
				origin_attachment 	(445, 495)
				terminal_attachment 	(445, 388))
			    (object AssociationViewNew "$UNNAMED$1" @379
				location   	(688, 952)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3AD5CEBE00E2"
				roleview_list 	(list RoleViews
				    (object RoleView "eParts" @380
					Parent_View 	@379
					location   	(176, 328)
					label      	(object SegLabel @381
					    Parent_View 	@380
					    location   	(952, 897)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	144
					    justify    	0
					    label      	"+eParts"
					    pctDist    	0.697452
					    height     	56
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5CEBF0061"
					client     	@379
					supplier   	@375
					line_style 	3
					origin_attachment 	(688, 952)
					terminal_attachment 	(1066, 952)
					label      	(object SegLabel @382
					    Parent_View 	@380
					    location   	(987, 1005)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.789809
					    height     	53
					    orientation 	1)
					label      	(object SegLabel @383
					    Parent_View 	@380
					    location   	(967, 1061)
					    anchor     	3
					    anchor_loc 	1
					    nlines     	1
					    max_width  	154
					    justify    	0
					    label      	"{ordered}"
					    pctDist    	0.742038
					    height     	109
					    orientation 	1))
				    (object RoleView "$UNNAMED$2" @384
					Parent_View 	@379
					location   	(176, 328)
					label      	(object SegLabel @385
					    Parent_View 	@384
					    location   	(404, 893)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3AD5CEBF0057"
					client     	@379
					supplier   	@377
					vertices   	(list Points
					    (688, 952)
					    (445, 952)
					    (445, 817))
					line_style 	3
					origin_attachment 	(688, 952)
					terminal_attachment 	(445, 817)
					label      	(object SegLabel @386
					    Parent_View 	@384
					    location   	(393, 912)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..1"
					    pctDist    	0.747604
					    height     	53
					    orientation 	0))))))))
	    (object Class_Category "xsd"
		attributes 	(list Attribute_Set
		    (object Attribute
			tool       	"Ecore"
			name       	"prefix"
			value      	"XSD")
		    (object Attribute
			tool       	"Ecore"
			name       	"basePackage"
			value      	"org.eclipse")
		    (object Attribute
			tool       	"Ecore"
			name       	"nsPrefix"
			value      	"xsd")
		    (object Attribute
			tool       	"Ecore"
			name       	"nsURI"
			value      	"http://www.eclipse.org/xsd/2002/XSD"))
		quid       	"39ABDC6F01AA"
		exportControl 	"Public"
		logical_models 	(list unit_reference_list
		    (object Class "XSDAnnotation"
			quid       	"3B66EDC80233"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B69E1770116"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029")
			    (object Inheritance_Relationship
				quid       	"3B7FD4E20366"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDRedefineContent"
				quidu      	"3B6AE2060172"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "applicationInformation"
				quid       	"3BBF7EBF02C8"
				stereotype 	"0..*"
				type       	"DOMElement"
				exportControl 	"Public")
			    (object ClassAttribute "userInformation"
				quid       	"3BBF7EEA0157"
				stereotype 	"0..*"
				type       	"DOMElement"
				exportControl 	"Public")
			    (object ClassAttribute "attributes"
				quid       	"3BBF7F0501E2"
				stereotype 	"0..*"
				type       	"DOMAttr"
				exportControl 	"Public")))
		    (object Class "XSDAttributeDeclaration"
			quid       	"3B66ED2E0192"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B69B7DC0193"
				supplier   	"Logical View::xsd::XSDFeature"
				quidu      	"3B69B537026C")
			    (object Inheritance_Relationship
				quid       	"3B688E6103BE"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDSchemaContent"
				quidu      	"3B688CB800BA"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "attributeDeclarationReference"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C287F5202B4"
				type       	"boolean"
				exportControl 	"Public")))
		    (object Class "XSDAttributeGroupContent"
			quid       	"3B6940200089"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B72D8E200EA"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"))
			abstract   	TRUE)
		    (object Class "XSDAttributeGroupDefinition"
			quid       	"3B66ED840290"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B69403A0221"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDAttributeGroupContent"
				quidu      	"3B6940200089")
			    (object Inheritance_Relationship
				quid       	"3B6AE2EB02A8"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDRedefineContent"
				quidu      	"3B6AE2060172")
			    (object Inheritance_Relationship
				quid       	"3B7FCAC800D2"
				supplier   	"Logical View::xsd::XSDRedefinableComponent"
				quidu      	"3B7FCA8B020B"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "attributeGroupDefinitionReference"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C287F7B0386"
				type       	"boolean"
				exportControl 	"Public")))
		    (object Class "XSDAttributeUse"
			quid       	"3B68354601A8"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B72D737038F"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDAttributeGroupContent"
				quidu      	"3B6940200089")
			    (object Inheritance_Relationship
				quid       	"3B72D7BB0349"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "required"
				quid       	"3B69CCF3027D"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "value"
				quid       	"3B69CDDB03B7"
				type       	"Value"
				exportControl 	"Public")
			    (object ClassAttribute "constraint"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69CDE002D8"
				type       	"XSDConstraint"
				exportControl 	"Public")
			    (object ClassAttribute "use"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA7B0220382"
				type       	"XSDAttributeUseCategory"
				exportControl 	"Public")
			    (object ClassAttribute "lexicalValue"
				quid       	"3C2719D90341"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDBoundedFacet"
			quid       	"3B6C751D0344"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C763C0224"
				supplier   	"Logical View::xsd::XSDFundamentalFacet"
				quidu      	"3B6C69E801D6"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C752A00CC"
				type       	"boolean"
				exportControl 	"Public")))
		    (object Class "XSDCardinalityFacet"
			quid       	"3B6C755D03D2"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C764F0131"
				supplier   	"Logical View::xsd::XSDFundamentalFacet"
				quidu      	"3B6C69E801D6"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C756C0153"
				type       	"XSDCardinality"
				exportControl 	"Public")))
		    (object Class "XSDComplexTypeContent"
			quid       	"3B683BA00196"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6848B80286"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029"))
			abstract   	TRUE)
		    (object Class "XSDComplexTypeDefinition"
			quid       	"3B682B82031A"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B69BAA20310"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDScope"
				quidu      	"3B69B54000F2")
			    (object Inheritance_Relationship
				quid       	"3BA0D01901F1"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "derivationMethod"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69C6E4020E"
				type       	"XSDDerivationMethod"
				initv      	"restriction"
				exportControl 	"Public")
			    (object ClassAttribute "final"
				quid       	"3B69C71D026A"
				stereotype 	"0..*"
				type       	"XSDComplexFinal"
				exportControl 	"Public")
			    (object ClassAttribute "abstract"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69C73800C5"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "contentTypeCategory"
				quid       	"3B69CA4202B8"
				type       	"XSDContentTypeCategory"
				exportControl 	"Public")
			    (object ClassAttribute "prohibitedSubstitutions"
				quid       	"3B69CB8A03E6"
				stereotype 	"0..*"
				type       	"XSDProhibitedSubstitutions"
				exportControl 	"Public")
			    (object ClassAttribute "lexicalFinal"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA0F618014D"
				stereotype 	"0..*"
				type       	"XSDComplexFinal"
				exportControl 	"Public")
			    (object ClassAttribute "block"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA0FB97006E"
				stereotype 	"0..*"
				type       	"XSDProhibitedSubstitutions"
				exportControl 	"Public")
			    (object ClassAttribute "mixed"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3C31AF5E03A6"
				type       	"boolean"
				exportControl 	"Public")))
		    (object Class "XSDComponent"
			quid       	"3B6846E90029"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3BA0CEA903D2"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"))
			abstract   	TRUE)
		    (object Class "XSDConcreteComponent"
			quid       	"3B6AD7B40065"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "element"
				quid       	"3B6ADDB501A5"
				type       	"DOMElement"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDConstrainingFacet"
			quid       	"3B6C6B340093"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C6C800394"
				supplier   	"Logical View::xsd::XSDFacet"
				quidu      	"3B6C359403D2"))
			abstract   	TRUE)
		    (object Class "XSDDiagnostic"
			quid       	"3BFE5F910046"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3D4C0F4C01A1"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "severity"
				quid       	"3BFE691C005D"
				type       	"XSDDiagnosticSeverity"
				exportControl 	"Public")
			    (object ClassAttribute "message"
				quid       	"3BFE5FDD0280"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "locationURI"
				quid       	"3C063743016B"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "line"
				quid       	"3BFE607E0213"
				type       	"int"
				initv      	"1"
				exportControl 	"Public")
			    (object ClassAttribute "column"
				quid       	"3BFE611E0296"
				type       	"int"
				initv      	"1"
				exportControl 	"Public")
			    (object ClassAttribute "node"
				quid       	"3C016B6B0200"
				type       	"DOMNode"
				exportControl 	"Public")
			    (object ClassAttribute "annotationURI"
				quid       	"3C06374F0186"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDElementDeclaration"
			quid       	"3B66ED580214"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B69EDEE01BF"
				supplier   	"Logical View::xsd::XSDFeature"
				quidu      	"3B69B537026C")
			    (object Inheritance_Relationship
				quid       	"3B685F17002E"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDTerm"
				quidu      	"3B683C5E0174")
			    (object Inheritance_Relationship
				quid       	"3B688E660339"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDSchemaContent"
				quidu      	"3B688CB800BA"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "nillable"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69BFB4029F"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "disallowedSubstitutions"
				quid       	"3B69C4680368"
				stereotype 	"0..*"
				type       	"XSDDisallowedSubstitutions"
				exportControl 	"Public")
			    (object ClassAttribute "substitutionGroupExclusions"
				quid       	"3B69C4A003B9"
				stereotype 	"0..*"
				type       	"XSDSubstitutionGroupExclusions"
				exportControl 	"Public")
			    (object ClassAttribute "abstract"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69C4E0000E"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "lexicalFinal"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA0D14C00B2"
				stereotype 	"0..*"
				type       	"XSDProhibitedSubstitutions"
				exportControl 	"Public")
			    (object ClassAttribute "block"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA0D16801C1"
				stereotype 	"0..*"
				type       	"XSDDisallowedSubstitutions"
				exportControl 	"Public")
			    (object ClassAttribute "elementDeclarationReference"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C289F6203CF"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "circular"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C34DCB00018"
				type       	"boolean"
				exportControl 	"Public")))
		    (object Class "XSDEnumerationFacet"
			quid       	"3B6C6ACE0141"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C6C9D03C7"
				supplier   	"Logical View::xsd::XSDRepeatableFacet"
				quidu      	"3B6C6AA6031A"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C7C640054"
				stereotype 	"0..*"
				type       	"Value"
				exportControl 	"Public")))
		    (object Class "XSDFacet"
			quid       	"3B6C359403D2"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6D25680259"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "lexicalValue"
				quid       	"3B6C73740253"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "facetName"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C289FB401EC"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "effectiveValue"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28AAE303B6"
				type       	"Value"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDFeature"
			quid       	"3B69B537026C"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3C290A2C0307"
				supplier   	"Logical View::xsd::XSDNamedComponent"
				quidu      	"3B6846D303A4"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B69BF81020F"
				type       	"Value"
				exportControl 	"Public")
			    (object ClassAttribute "constraint"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69BF8800C5"
				type       	"XSDConstraint"
				exportControl 	"Public")
			    (object ClassAttribute "form"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B9F902B033E"
				type       	"XSDForm"
				exportControl 	"Public")
			    (object ClassAttribute "lexicalValue"
				quid       	"3C271A1B016F"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "global"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A0070372"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "featureReference"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A0440185"
				type       	"boolean"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDFixedFacet"
			quid       	"3B6C699E00C1"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C6C8801B4"
				supplier   	"Logical View::xsd::XSDConstrainingFacet"
				quidu      	"3B6C6B340093"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "fixed"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B6C6A600201"
				type       	"boolean"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDFractionDigitsFacet"
			quid       	"3B6C79BE02EE"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7B990016"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C79D2008A"
				type       	"int"
				exportControl 	"Public")))
		    (object Class "XSDFundamentalFacet"
			quid       	"3B6C69E801D6"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C6C7B0396"
				supplier   	"Logical View::xsd::XSDFacet"
				quidu      	"3B6C359403D2"))
			abstract   	TRUE)
		    (object Class "XSDIdentityConstraintDefinition"
			quid       	"3B682B2603A2"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B684AA30242"
				supplier   	"Logical View::xsd::XSDNamedComponent"
				quidu      	"3B6846D303A4"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "identityConstraintCategory"
				quid       	"3B69D1C70143"
				type       	"XSDIdentityConstraintCategory"
				exportControl 	"Public")))
		    (object Class "XSDImport"
			quid       	"3B688C93017F"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6AD8D9003E"
				supplier   	"Logical View::xsd::XSDSchemaDirective"
				quidu      	"3B6AD8A202A2"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "namespace"
				quid       	"3B6ADB15036C"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDInclude"
			quid       	"3B688C7D0250"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6AD8DC0381"
				supplier   	"Logical View::xsd::XSDSchemaCompositor"
				quidu      	"3C21DB4102AE")))
		    (object Class "XSDLengthFacet"
			quid       	"3B6C776200E7"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C778002DF"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C776C004B"
				type       	"int"
				exportControl 	"Public")))
		    (object Class "XSDMaxExclusiveFacet"
			quid       	"3B6C789600C2"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7B8E0309"
				supplier   	"Logical View::xsd::XSDMaxFacet"
				quidu      	"3C0A1CEB010E")))
		    (object Class "XSDMaxFacet"
			quid       	"3C0A1CEB010E"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3C0A1D3103AD"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3C0A1EE201F7"
				type       	"Value"
				exportControl 	"Public")
			    (object ClassAttribute "inclusive"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A174027D"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "exclusive"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A1930354"
				type       	"boolean"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDMaxInclusiveFacet"
			quid       	"3B6C787D00DA"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7B8303B8"
				supplier   	"Logical View::xsd::XSDMaxFacet"
				quidu      	"3C0A1CEB010E")))
		    (object Class "XSDMaxLengthFacet"
			quid       	"3B6C77C70146"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7B7D00FC"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C77DA00F3"
				type       	"int"
				exportControl 	"Public")))
		    (object Class "XSDMinExclusiveFacet"
			quid       	"3B6C792D000A"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7B590281"
				supplier   	"Logical View::xsd::XSDMinFacet"
				quidu      	"3C0A1CDE037C")))
		    (object Class "XSDMinFacet"
			quid       	"3C0A1CDE037C"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3C0A1D240098"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3C0A1ED10398"
				type       	"Value"
				exportControl 	"Public")
			    (object ClassAttribute "inclusive"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A1A2008E"
				type       	"boolean"
				exportControl 	"Public")
			    (object ClassAttribute "exclusive"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A1BE03E2"
				type       	"boolean"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDMinInclusiveFacet"
			quid       	"3B6C788702C9"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7B520353"
				supplier   	"Logical View::xsd::XSDMinFacet"
				quidu      	"3C0A1CDE037C")))
		    (object Class "XSDMinLengthFacet"
			quid       	"3B6C778C0065"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C77C400C0"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C7799015E"
				type       	"int"
				exportControl 	"Public")))
		    (object Class "XSDModelGroup"
			quid       	"3B6834E00291"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B684A640279"
				supplier   	"Logical View::xsd::XSDTerm"
				quidu      	"3B683C5E0174"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "compositor"
				quid       	"3B69CF1D01CF"
				type       	"XSDCompositor"
				exportControl 	"Public")))
		    (object Class "XSDModelGroupDefinition"
			quid       	"3B66ED9A0205"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6AE2E20381"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDRedefineContent"
				quidu      	"3B6AE2060172")
			    (object Inheritance_Relationship
				quid       	"3B6BD2550385"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDParticleContent"
				quidu      	"3B6BD22300C6")
			    (object Inheritance_Relationship
				quid       	"3B7FCAC40090"
				supplier   	"Logical View::xsd::XSDRedefinableComponent"
				quidu      	"3B7FCA8B020B"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "modelGroupDefinitionReference"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A1F602E8"
				type       	"boolean"
				exportControl 	"Public")))
		    (object Class "XSDNamedComponent"
			quid       	"3B6846D303A4"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3BA0CEA20197"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "name"
				quid       	"3B6847000142"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "targetNamespace"
				quid       	"3B684704031E"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "aliasName"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A57F0127"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "uRI"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A58700E2"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "aliasURI"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A5AA02AF"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "qName"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C290963025E"
				type       	"String"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDNotationDeclaration"
			quid       	"3B66EDAA021C"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B68494302F1"
				supplier   	"Logical View::xsd::XSDNamedComponent"
				quidu      	"3B6846D303A4")
			    (object Inheritance_Relationship
				quid       	"3B688E4F023C"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDSchemaContent"
				quidu      	"3B688CB800BA"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "systemIdentifier"
				quid       	"3B69D32E00F0"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "publicIdentifier"
				quid       	"3B69D3340397"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDNumericFacet"
			quid       	"3B6C75950206"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C76420074"
				supplier   	"Logical View::xsd::XSDFundamentalFacet"
				quidu      	"3B6C69E801D6"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C75A30012"
				type       	"boolean"
				exportControl 	"Public")))
		    (object Class "XSDOrderedFacet"
			quid       	"3B6C74DD0248"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7659012C"
				supplier   	"Logical View::xsd::XSDFundamentalFacet"
				quidu      	"3B6C69E801D6"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C74F602DA"
				type       	"XSDOrdered"
				exportControl 	"Public")))
		    (object Class "XSDParticle"
			quid       	"3B682BBD01F7"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6848FC01E7"
				supplier   	"Logical View::xsd::XSDComplexTypeContent"
				quidu      	"3B683BA00196"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "minOccurs"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69CF8E03B2"
				type       	"int"
				initv      	"1"
				exportControl 	"Public")
			    (object ClassAttribute "maxOccurs"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69CF9903AE"
				type       	"int"
				initv      	"1"
				exportControl 	"Public")))
		    (object Class "XSDParticleContent"
			quid       	"3B6BD22300C6"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B780BD90059"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"))
			abstract   	TRUE)
		    (object Class "XSDPatternFacet"
			quid       	"3B6C6ADB026C"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C6CA5038D"
				supplier   	"Logical View::xsd::XSDRepeatableFacet"
				quidu      	"3B6C6AA6031A"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C7C790311"
				stereotype 	"0..*"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDRedefinableComponent"
			quid       	"3B7FCA8B020B"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B7FD4BA023C"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDRedefineContent"
				quidu      	"3B6AE2060172")
			    (object Inheritance_Relationship
				quid       	"3C290A26036D"
				supplier   	"Logical View::xsd::XSDNamedComponent"
				quidu      	"3B6846D303A4"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "circular"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE))
				quid       	"3C28A6800216"
				type       	"boolean"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDRedefineContent"
			quid       	"3B6AE2060172"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6AE2B301D5"
				supplier   	"Logical View::xsd::XSDSchemaContent"
				quidu      	"3B688CB800BA"))
			abstract   	TRUE)
		    (object Class "XSDRedefine"
			quid       	"3B688C9B02AD"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3C21DB640240"
				supplier   	"Logical View::xsd::XSDSchemaCompositor"
				quidu      	"3C21DB4102AE")))
		    (object Class "XSDRepeatableFacet"
			quid       	"3B6C6AA6031A"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C6C8F002E"
				supplier   	"Logical View::xsd::XSDConstrainingFacet"
				quidu      	"3B6C6B340093"))
			abstract   	TRUE)
		    (object Class "XSDSchema"
			quid       	"374B182500BB"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B7FCC4A0182"
				supplier   	"Logical View::xsd::XSDScope"
				quidu      	"3B69B54000F2"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "document"
				quid       	"3C2784E503DD"
				type       	"DOMDocument"
				exportControl 	"Public")
			    (object ClassAttribute "schemaLocation"
				quid       	"3B6868EC0226"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "targetNamespace"
				quid       	"3B9F9BFF0180"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "attributeFormDefault"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B9F904B0102"
				type       	"XSDForm"
				initv      	"unqualified"
				exportControl 	"Public")
			    (object ClassAttribute "elementFormDefault"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B9F907800AC"
				type       	"XSDForm"
				initv      	"unqualified"
				exportControl 	"Public")
			    (object ClassAttribute "finalDefault"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA0C4A70038"
				stereotype 	"0..*"
				type       	"XSDProhibitedSubstitutions"
				exportControl 	"Public")
			    (object ClassAttribute "blockDefault"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA0F59D02D8"
				stereotype 	"0..*"
				type       	"XSDDisallowedSubstitutions"
				exportControl 	"Public")
			    (object ClassAttribute "version"
				quid       	"3D22D6D80356"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDSchemaCompositor"
			quid       	"3C21DB4102AE"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3C21DB560092"
				supplier   	"Logical View::xsd::XSDSchemaDirective"
				quidu      	"3B6AD8A202A2"))
			abstract   	TRUE)
		    (object Class "XSDSchemaContent"
			quid       	"3B688CB800BA"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6AD8E60372"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"))
			abstract   	TRUE)
		    (object Class "XSDSchemaDirective"
			quid       	"3B6AD8A202A2"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6AE32102AF"
				supplier   	"Logical View::xsd::XSDSchemaContent"
				quidu      	"3B688CB800BA"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "schemaLocation"
				quid       	"3B6AD9B30330"
				type       	"String"
				exportControl 	"Public"))
			abstract   	TRUE)
		    (object Class "XSDScope"
			quid       	"3B69B54000F2"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B7FCD640231"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029"))
			abstract   	TRUE)
		    (object Class "XSDSimpleTypeDefinition"
			quid       	"3B682BA7005D"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B684A1302A2"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9")
			    (object Inheritance_Relationship
				quid       	"3B685F55032B"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDComplexTypeContent"
				quidu      	"3B683BA00196"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "variety"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B6C315800A9"
				type       	"XSDVariety"
				exportControl 	"Public")
			    (object ClassAttribute "final"
				quid       	"3B6D544F0146"
				stereotype 	"0..*"
				type       	"XSDSimpleFinal"
				exportControl 	"Public")
			    (object ClassAttribute "lexicalFinal"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA0F65E035A"
				stereotype 	"0..*"
				type       	"XSDSimpleFinal"
				exportControl 	"Public")
			    (object ClassAttribute "validFacets"
				quid       	"3C28AB0F00B6"
				stereotype 	"0..*"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDTerm"
			quid       	"3B683C5E0174"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6848AA01D3"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029")
			    (object Inheritance_Relationship
				quid       	"3B6BD2440069"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDParticleContent"
				quidu      	"3B6BD22300C6"))
			abstract   	TRUE)
		    (object Class "XSDTotalDigitsFacet"
			quid       	"3B6C79A0020E"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C7B610337"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C79AB0232"
				type       	"int"
				exportControl 	"Public")))
		    (object Class "XSDTypeDefinition"
			quid       	"3B66ECD302A9"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6AE2F5013A"
				stereotype 	"mixin"
				supplier   	"Logical View::xsd::XSDRedefineContent"
				quidu      	"3B6AE2060172")
			    (object Inheritance_Relationship
				quid       	"3B7FCAB1004D"
				supplier   	"Logical View::xsd::XSDRedefinableComponent"
				quidu      	"3B7FCA8B020B"))
			abstract   	TRUE)
		    (object Class "XSDWhiteSpaceFacet"
			quid       	"3B6C784601B7"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6C78620045"
				supplier   	"Logical View::xsd::XSDFixedFacet"
				quidu      	"3B6C699E00C1"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "value"
				quid       	"3B6C78500201"
				type       	"XSDWhiteSpace"
				exportControl 	"Public")))
		    (object Class "XSDWildcard"
			quid       	"3B6838370031"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B684A3A0041"
				supplier   	"Logical View::xsd::XSDTerm"
				quidu      	"3B683C5E0174"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "namespaceConstraintCategory"
				quid       	"3B69D0E9019E"
				type       	"XSDNamespaceConstraintCategory"
				exportControl 	"Public")
			    (object ClassAttribute "namespaceConstraint"
				quid       	"3B97CF860223"
				stereotype 	"0..*"
				type       	"String"
				exportControl 	"Public")
			    (object ClassAttribute "processContents"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3B69D12E01E4"
				type       	"XSDProcessContents"
				exportControl 	"Public")
			    (object ClassAttribute "lexicalNamespaceConstraint"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isUnsettable"
					value      	TRUE))
				quid       	"3BA7BDB701F9"
				stereotype 	"0..*"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "XSDXPathDefinition"
			quid       	"3B6D83BB0355"
			superclasses 	(list inheritance_relationship_list
			    (object Inheritance_Relationship
				quid       	"3B6D84F70092"
				supplier   	"Logical View::xsd::XSDComponent"
				quidu      	"3B6846E90029"))
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "variety"
				quid       	"3B6D901503DE"
				type       	"XSDXPathVariety"
				exportControl 	"Public")
			    (object ClassAttribute "value"
				quid       	"3B7BBBE101B1"
				type       	"String"
				exportControl 	"Public")))
		    (object Class "DOMAttr"
			quid       	"3BBF8C8901B6"
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "org.w3c.dom.Attr"
				quid       	"3BBF8CB000D5"
				stereotype 	"javaclass"
				exportControl 	"Public")))
		    (object Class "DOMDocument"
			quid       	"3C27850E0381"
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "org.w3c.dom.Document"
				quid       	"3C27851B03C6"
				stereotype 	"javaclass"
				exportControl 	"Public")))
		    (object Class "DOMElement"
			quid       	"3B8189790200"
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "org.w3c.dom.Element"
				quid       	"3B8189DB0374"
				stereotype 	"javaclass"
				exportControl 	"Public")))
		    (object Class "DOMNode"
			quid       	"3BFE64A50117"
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "org.w3c.dom.Node"
				quid       	"3BFE65BF002D"
				stereotype 	"javaclass"
				exportControl 	"Public")))
		    (object Class "Value"
			quid       	"3C040B5B031F"
			stereotype 	"datatype"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "java.lang.Object"
				quid       	"3C040B8D03D5"
				stereotype 	"javaclass"
				exportControl 	"Public")))
		    (object Class "XSDAttributeUseCategory"
			quid       	"3BA7B0E801A8"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "optional"
				quid       	"3BA7B11502B7"
				exportControl 	"Public")
			    (object ClassAttribute "prohibited"
				quid       	"3BA7B12202D3"
				exportControl 	"Public")
			    (object ClassAttribute "required"
				quid       	"3BA7B12902F0"
				exportControl 	"Public")))
		    (object Class "XSDCardinality"
			quid       	"3BC7715D009B"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "finite"
				quid       	"3BC771DC02ED"
				exportControl 	"Public")
			    (object ClassAttribute "countablyInfinite"
				quid       	"3BC771EC0141"
				exportControl 	"Public")))
		    (object Class "XSDComplexFinal"
			quid       	"3B97C2CA01CB"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "extension"
				quid       	"3B97C2E700DA"
				exportControl 	"Public")
			    (object ClassAttribute "restriction"
				quid       	"3B97C2EA016A"
				exportControl 	"Public")
			    (object ClassAttribute "all"
				quid       	"3BA0F6D20112"
				exportControl 	"Public")))
		    (object Class "XSDCompositor"
			quid       	"3B869B620037"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "all"
				quid       	"3B869BD00003"
				exportControl 	"Public")
			    (object ClassAttribute "choice"
				quid       	"3B869CB8011E"
				exportControl 	"Public")
			    (object ClassAttribute "sequence"
				quid       	"3B869CE50057"
				exportControl 	"Public")))
		    (object Class "XSDConstraint"
			quid       	"3B869E2601AE"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "default"
				quid       	"3B869E8E0258"
				exportControl 	"Public")
			    (object ClassAttribute "fixed"
				quid       	"3B869E990271"
				exportControl 	"Public")))
		    (object Class "XSDContentTypeCategory"
			quid       	"3B86A79F03A2"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "empty"
				quid       	"3B86A7CD02F0"
				exportControl 	"Public")
			    (object ClassAttribute "simple"
				quid       	"3B86A7D100CE"
				exportControl 	"Public")
			    (object ClassAttribute "mixed"
				quid       	"3B86A7D301B7"
				exportControl 	"Public")
			    (object ClassAttribute "elementOnly"
				quid       	"3B86A7D702E9"
				exportControl 	"Public")))
		    (object Class "XSDDerivationMethod"
			quid       	"3B86A0B000CE"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "extension"
				quid       	"3B86A0C80329"
				exportControl 	"Public")
			    (object ClassAttribute "restriction"
				quid       	"3B86A0CC0162"
				exportControl 	"Public")))
		    (object Class "XSDDiagnosticSeverity"
			quid       	"3BFE68A7032F"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "fatal"
				quid       	"3BFE68C303D0"
				exportControl 	"Public")
			    (object ClassAttribute "error"
				quid       	"3BFE68E700E3"
				exportControl 	"Public")
			    (object ClassAttribute "warning"
				quid       	"3BFE68EA01FF"
				exportControl 	"Public")
			    (object ClassAttribute "information"
				quid       	"3BFE7FC2019A"
				exportControl 	"Public")))
		    (object Class "XSDDisallowedSubstitutions"
			quid       	"3B97C5A403DF"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "substitution"
				quid       	"3B97C6790045"
				exportControl 	"Public")
			    (object ClassAttribute "extension"
				quid       	"3B97C67F01AC"
				exportControl 	"Public")
			    (object ClassAttribute "restriction"
				quid       	"3B97C683020B"
				exportControl 	"Public")
			    (object ClassAttribute "all"
				quid       	"3BA0F2450069"
				exportControl 	"Public")))
		    (object Class "XSDForm"
			quid       	"3B9F913B01EB"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "qualified"
				quid       	"3B9F916F0023"
				exportControl 	"Public")
			    (object ClassAttribute "unqualified"
				quid       	"3B9F918C007F"
				exportControl 	"Public")))
		    (object Class "XSDIdentityConstraintCategory"
			quid       	"3B86A1E00272"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "key"
				quid       	"3B86A2120085"
				exportControl 	"Public")
			    (object ClassAttribute "keyref"
				quid       	"3B86A213014F"
				exportControl 	"Public")
			    (object ClassAttribute "unique"
				quid       	"3B86A2160365"
				exportControl 	"Public")))
		    (object Class "XSDNamespaceConstraintCategory"
			quid       	"3B97C5EA0023"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "any"
				quid       	"3B97D0600034"
				exportControl 	"Public")
			    (object ClassAttribute "not"
				quid       	"3B97D062005F"
				exportControl 	"Public")
			    (object ClassAttribute "set"
				quid       	"3B97D0650117"
				exportControl 	"Public")))
		    (object Class "XSDOrdered"
			quid       	"3BC7715202E4"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "false"
				quid       	"3BC771A90271"
				exportControl 	"Public")
			    (object ClassAttribute "partial"
				quid       	"3BC771BB01FF"
				exportControl 	"Public")
			    (object ClassAttribute "total"
				quid       	"3BC771C401B2"
				exportControl 	"Public")))
		    (object Class "XSDProcessContents"
			quid       	"3B8FF8C70284"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "strict"
				quid       	"3B8FF8F80045"
				exportControl 	"Public")
			    (object ClassAttribute "lax"
				quid       	"3B8FF8F6038B"
				exportControl 	"Public")
			    (object ClassAttribute "skip"
				quid       	"3B8FF8E802BA"
				exportControl 	"Public")))
		    (object Class "XSDProhibitedSubstitutions"
			quid       	"3B97C5BE0272"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "extension"
				quid       	"3B97C68B00B8"
				exportControl 	"Public")
			    (object ClassAttribute "restriction"
				quid       	"3B97C6940291"
				exportControl 	"Public")
			    (object ClassAttribute "all"
				quid       	"3BA0F2500295"
				exportControl 	"Public")))
		    (object Class "XSDSimpleFinal"
			quid       	"3B97C25D0295"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "list"
				quid       	"3B97C2810230"
				exportControl 	"Public")
			    (object ClassAttribute "restriction"
				quid       	"3B97C2830138"
				exportControl 	"Public")
			    (object ClassAttribute "union"
				quid       	"3B97C288024E"
				exportControl 	"Public")
			    (object ClassAttribute "all"
				quid       	"3BA0F6E00374"
				exportControl 	"Public")))
		    (object Class "XSDSubstitutionGroupExclusions"
			quid       	"3B97C59100AE"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "extension"
				quid       	"3B97C6640231"
				exportControl 	"Public")
			    (object ClassAttribute "restriction"
				quid       	"3B97C66D0216"
				exportControl 	"Public")))
		    (object Class "XSDVariety"
			quid       	"3B8FF7730249"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "atomic"
				quid       	"3B8FF7A702DF"
				exportControl 	"Public")
			    (object ClassAttribute "list"
				quid       	"3B8FF7AD0139"
				exportControl 	"Public")
			    (object ClassAttribute "union"
				quid       	"3B8FF7AF039F"
				exportControl 	"Public")))
		    (object Class "XSDWhiteSpace"
			quid       	"3BEED0F60342"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "preserve"
				quid       	"3BEED10F0117"
				exportControl 	"Public")
			    (object ClassAttribute "replace"
				quid       	"3BEED127034D"
				exportControl 	"Public")
			    (object ClassAttribute "collapse"
				quid       	"3BEED1290396"
				exportControl 	"Public")))
		    (object Class "XSDXPathVariety"
			quid       	"3B8FFB89033A"
			stereotype 	"enumeration"
			class_attributes 	(list class_attribute_list
			    (object ClassAttribute "selector"
				quid       	"3B8FFBAC0192"
				exportControl 	"Public")
			    (object ClassAttribute "field"
				quid       	"3B8FFBB30278"
				exportControl 	"Public")))
		    (object Association "$UNNAMED$64"
			quid       	"3C626EA70102"
			roles      	(list role_list
			    (object Role "$UNNAMED$65"
				quid       	"3C626EA90191"
				supplier   	"Logical View::xsd::XSDRepeatableFacet"
				quidu      	"3B6C6AA6031A"
				is_aggregate 	TRUE)
			    (object Role "annotations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3C626EA90192"
				label      	"annotations"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$66"
			quid       	"3B69DADC02F5"
			roles      	(list role_list
			    (object Role "$UNNAMED$67"
				quid       	"3B69DADD0238"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DADD0242"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$68"
			quid       	"3B6890D6006F"
			roles      	(list role_list
			    (object Role "$UNNAMED$69"
				quid       	"3B6890D6030E"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				is_aggregate 	TRUE)
			    (object Role "anonymousTypeDefinition"
				quid       	"3B6890D60318"
				label      	"anonymousTypeDefinition"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$70"
			quid       	"3B68356B02CB"
			roles      	(list role_list
			    (object Role "$UNNAMED$71"
				quid       	"3B68356D00A6"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				is_aggregate 	TRUE)
			    (object Role "typeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B68356D00A7"
				label      	"typeDefinition"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$72"
			quid       	"3B6B426B0194"
			roles      	(list role_list
			    (object Role "$UNNAMED$73"
				quid       	"3B6B426D0309"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				is_aggregate 	TRUE)
			    (object Role "resolvedAttributeDeclaration"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6B426D0313"
				label      	"resolvedAttributeDeclaration"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$74"
			quid       	"3B69DB060291"
			roles      	(list role_list
			    (object Role "$UNNAMED$75"
				quid       	"3B69DB070171"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DB070172"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$76"
			quid       	"3B69404E0067"
			roles      	(list role_list
			    (object Role "$UNNAMED$77"
				quid       	"3B694050029B"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				is_aggregate 	TRUE)
			    (object Role "contents"
				quid       	"3B69405002A5"
				label      	"contents"
				supplier   	"Logical View::xsd::XSDAttributeGroupContent"
				quidu      	"3B6940200089"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$78"
			quid       	"3B68359F0086"
			roles      	(list role_list
			    (object Role "$UNNAMED$79"
				quid       	"3B6835A00069"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				is_aggregate 	TRUE)
			    (object Role "attributeUses"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6835A0006A"
				label      	"attributeUses"
				supplier   	"Logical View::xsd::XSDAttributeUse"
				quidu      	"3B68354601A8"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$80"
			quid       	"3C275D320220"
			roles      	(list role_list
			    (object Role "$UNNAMED$81"
				quid       	"3C275D3C010C"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				is_aggregate 	TRUE)
			    (object Role "attributeWildcardContent"
				quid       	"3C275D3C010D"
				label      	"attributeWildcardContent"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$82"
			quid       	"3B6887BF0150"
			roles      	(list role_list
			    (object Role "$UNNAMED$83"
				quid       	"3B6887C000A7"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				is_aggregate 	TRUE)
			    (object Role "attributeWildcard"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6887C000A8"
				label      	"attributeWildcard"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$84"
			quid       	"3B6B425E01F9"
			roles      	(list role_list
			    (object Role "$UNNAMED$85"
				quid       	"3B6B42620046"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				is_aggregate 	TRUE)
			    (object Role "resolvedAttributeGroupDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6B42620050"
				label      	"resolvedAttributeGroupDefinition"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$86"
			quid       	"3B683585010D"
			roles      	(list role_list
			    (object Role "$UNNAMED$87"
				quid       	"3B68358600FA"
				supplier   	"Logical View::xsd::XSDAttributeUse"
				quidu      	"3B68354601A8"
				is_aggregate 	TRUE)
			    (object Role "attributeDeclaration"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B68358600FB"
				label      	"attributeDeclaration"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$88"
			quid       	"3B6F1DE9018A"
			roles      	(list role_list
			    (object Role "$UNNAMED$89"
				quid       	"3B6F1DEA036C"
				supplier   	"Logical View::xsd::XSDAttributeUse"
				quidu      	"3B68354601A8"
				is_aggregate 	TRUE)
			    (object Role "content"
				quid       	"3B6F1DEA0380"
				label      	"content"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$90"
			quid       	"3B90068801C2"
			roles      	(list role_list
			    (object Role "$UNNAMED$91"
				quid       	"3B90068A0111"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "contentAnnotation"
				quid       	"3B90068A011B"
				label      	"contentAnnotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$92"
			quid       	"3B6833350340"
			roles      	(list role_list
			    (object Role "$UNNAMED$93"
				quid       	"3B683336028D"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "baseTypeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B683336028E"
				label      	"baseTypeDefinition"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$94"
			quid       	"3B6FDDD70113"
			roles      	(list role_list
			    (object Role "$UNNAMED$95"
				quid       	"3B6FDDDA026B"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "content"
				quid       	"3B6FDDDA0275"
				label      	"content"
				supplier   	"Logical View::xsd::XSDComplexTypeContent"
				quidu      	"3B683BA00196"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$96"
			quid       	"3B6837DF024F"
			roles      	(list role_list
			    (object Role "$UNNAMED$97"
				quid       	"3B6837E100FD"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "contentType"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6837E100FE"
				label      	"contentType"
				supplier   	"Logical View::xsd::XSDComplexTypeContent"
				quidu      	"3B683BA00196"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$98"
			quid       	"3B683959006E"
			roles      	(list role_list
			    (object Role "$UNNAMED$99"
				quid       	"3B6839590349"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "attributeUses"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B683959034A"
				label      	"attributeUses"
				supplier   	"Logical View::xsd::XSDAttributeUse"
				quidu      	"3B68354601A8"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$100"
			quid       	"3B698E360386"
			roles      	(list role_list
			    (object Role "$UNNAMED$101"
				quid       	"3B698E380072"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "attributeContents"
				quid       	"3B698E38007C"
				label      	"attributeContents"
				supplier   	"Logical View::xsd::XSDAttributeGroupContent"
				quidu      	"3B6940200089"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$102"
			quid       	"3B6851BA0126"
			roles      	(list role_list
			    (object Role "$UNNAMED$103"
				quid       	"3B6851BB0150"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "attributeWildcard"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6851BB0151"
				label      	"attributeWildcard"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$104"
			quid       	"3B751B0803C7"
			roles      	(list role_list
			    (object Role "container"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3B751B0C01CE"
				label      	"container"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$105"
				attributes 	(list Attribute_Set)
				quid       	"3B751B0C01CF"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065")))
		    (object Association "$UNNAMED$106"
			quid       	"3B751B480261"
			roles      	(list role_list
			    (object Role "rootContainer"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3B751B4C0285"
				label      	"rootContainer"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$107"
				attributes 	(list Attribute_Set)
				quid       	"3B751B4C0286"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065")))
		    (object Association "$UNNAMED$108"
			quid       	"3B751C310356"
			roles      	(list role_list
			    (object Role "$UNNAMED$109"
				attributes 	(list Attribute_Set)
				quid       	"3B751C330331"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065")
			    (object Role "schema"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3B751C33033B"
				label      	"schema"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$110"
			quid       	"3B69DB0A0066"
			roles      	(list role_list
			    (object Role "$UNNAMED$111"
				quid       	"3B69DB0B023F"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DB0B0249"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$112"
			quid       	"3B68911401AF"
			roles      	(list role_list
			    (object Role "$UNNAMED$113"
				quid       	"3B6891150016"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				is_aggregate 	TRUE)
			    (object Role "anonymousTypeDefinition"
				quid       	"3B6891150017"
				label      	"anonymousTypeDefinition"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$114"
			quid       	"3B68338C0058"
			roles      	(list role_list
			    (object Role "$UNNAMED$115"
				quid       	"3B68338C03BF"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				is_aggregate 	TRUE)
			    (object Role "typeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B68338C03C0"
				label      	"typeDefinition"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$116"
			quid       	"3B6833EF0160"
			roles      	(list role_list
			    (object Role "$UNNAMED$117"
				quid       	"3B6833F00298"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				is_aggregate 	TRUE)
			    (object Role "identityConstraintDefinitions"
				quid       	"3B6833F00299"
				label      	"identityConstraintDefinitions"
				supplier   	"Logical View::xsd::XSDIdentityConstraintDefinition"
				quidu      	"3B682B2603A2"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$118"
			quid       	"3B6B41E60251"
			roles      	(list role_list
			    (object Role "$UNNAMED$119"
				quid       	"3B6B41EA02F7"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				is_aggregate 	TRUE)
			    (object Role "resolvedElementDeclaration"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6B41EA030B"
				label      	"resolvedElementDeclaration"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$120"
			quid       	"3B69C0590198"
			roles      	(list role_list
			    (object Role "$UNNAMED$121"
				quid       	"3B69C05D01E3"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214")
			    (object Role "substitutionGroupAffiliation"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B69C05D01ED"
				label      	"substitutionGroupAffiliation"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$122"
			quid       	"3C42DBDD0297"
			roles      	(list role_list
			    (object Role "$UNNAMED$123"
				quid       	"3C42DBE0011E"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				is_aggregate 	TRUE)
			    (object Role "substitutionGroup"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3C42DBE00128"
				label      	"substitutionGroup"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$124"
			quid       	"3B6D23B901CD"
			roles      	(list role_list
			    (object Role "$UNNAMED$125"
				quid       	"3B6D23BA01C4"
				supplier   	"Logical View::xsd::XSDFacet"
				quidu      	"3B6C359403D2"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B6D23BA01CE"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$126"
			quid       	"3B6D597102EA"
			roles      	(list role_list
			    (object Role "simpleTypeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6D59750105"
				label      	"simpleTypeDefinition"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$127"
				attributes 	(list Attribute_Set)
				quid       	"3B6D59750119"
				supplier   	"Logical View::xsd::XSDFacet"
				quidu      	"3B6C359403D2")))
		    (object Association "$UNNAMED$128"
			quid       	"3B69B653017A"
			roles      	(list role_list
			    (object Role "scope"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3B69B654006D"
				label      	"scope"
				supplier   	"Logical View::xsd::XSDScope"
				quidu      	"3B69B54000F2"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$129"
				attributes 	(list Attribute_Set)
				quid       	"3B69B654006E"
				supplier   	"Logical View::xsd::XSDFeature"
				quidu      	"3B69B537026C")))
		    (object Association "$UNNAMED$130"
			quid       	"3C29010602D7"
			roles      	(list role_list
			    (object Role "resolvedFeature"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C29010B000E"
				label      	"resolvedFeature"
				supplier   	"Logical View::xsd::XSDFeature"
				quidu      	"3B69B537026C"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$131"
				attributes 	(list Attribute_Set)
				quid       	"3C29010B0018"
				supplier   	"Logical View::xsd::XSDFeature"
				quidu      	"3B69B537026C")))
		    (object Association "$UNNAMED$132"
			quid       	"3B69DB0D0183"
			roles      	(list role_list
			    (object Role "$UNNAMED$133"
				quid       	"3B69DB0D033C"
				supplier   	"Logical View::xsd::XSDIdentityConstraintDefinition"
				quidu      	"3B682B2603A2"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DB0D0346"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$134"
			quid       	"3B69D29E014D"
			roles      	(list role_list
			    (object Role "referencedKey"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B69D2A80165"
				label      	"referencedKey"
				supplier   	"Logical View::xsd::XSDIdentityConstraintDefinition"
				quidu      	"3B682B2603A2"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$135"
				attributes 	(list Attribute_Set)
				quid       	"3B69D2A8016F"
				supplier   	"Logical View::xsd::XSDIdentityConstraintDefinition"
				quidu      	"3B682B2603A2")))
		    (object Association "$UNNAMED$136"
			quid       	"3B6D8D3D003E"
			roles      	(list role_list
			    (object Role "$UNNAMED$137"
				quid       	"3B6D8D3E022A"
				supplier   	"Logical View::xsd::XSDIdentityConstraintDefinition"
				quidu      	"3B682B2603A2"
				is_aggregate 	TRUE)
			    (object Role "selector"
				quid       	"3B6D8D3E0234"
				label      	"selector"
				supplier   	"Logical View::xsd::XSDXPathDefinition"
				quidu      	"3B6D83BB0355"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$138"
			quid       	"3B6D8D330025"
			roles      	(list role_list
			    (object Role "$UNNAMED$139"
				quid       	"3B6D8D330365"
				supplier   	"Logical View::xsd::XSDIdentityConstraintDefinition"
				quidu      	"3B682B2603A2"
				is_aggregate 	TRUE)
			    (object Role "fields"
				quid       	"3B6D8D330379"
				label      	"fields"
				supplier   	"Logical View::xsd::XSDXPathDefinition"
				quidu      	"3B6D83BB0355"
				client_cardinality 	(value cardinality "1..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$140"
			quid       	"3B6ADCD802FC"
			roles      	(list role_list
			    (object Role "$UNNAMED$141"
				quid       	"3B6ADCD9018B"
				supplier   	"Logical View::xsd::XSDImport"
				quidu      	"3B688C93017F"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B6ADCD9018C"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$142"
			quid       	"3B6ADCC5007E"
			roles      	(list role_list
			    (object Role "$UNNAMED$143"
				quid       	"3B6ADCC6006B"
				supplier   	"Logical View::xsd::XSDInclude"
				quidu      	"3B688C7D0250"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B6ADCC6006C"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$144"
			quid       	"3B69DB1702C8"
			roles      	(list role_list
			    (object Role "$UNNAMED$145"
				quid       	"3B69DB1803E2"
				supplier   	"Logical View::xsd::XSDModelGroup"
				quidu      	"3B6834E00291"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DB190004"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$146"
			quid       	"3B6BCEB102F8"
			roles      	(list role_list
			    (object Role "$UNNAMED$147"
				quid       	"3B6BCEB6001B"
				supplier   	"Logical View::xsd::XSDModelGroup"
				quidu      	"3B6834E00291"
				is_aggregate 	TRUE)
			    (object Role "contents"
				quid       	"3B6BCEB60025"
				label      	"contents"
				supplier   	"Logical View::xsd::XSDParticle"
				quidu      	"3B682BBD01F7"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$148"
			quid       	"3B683606026F"
			roles      	(list role_list
			    (object Role "$UNNAMED$149"
				quid       	"3B6836070221"
				supplier   	"Logical View::xsd::XSDModelGroup"
				quidu      	"3B6834E00291"
				is_aggregate 	TRUE)
			    (object Role "particles"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6836070222"
				label      	"particles"
				supplier   	"Logical View::xsd::XSDParticle"
				quidu      	"3B682BBD01F7"
				client_cardinality 	(value cardinality "1..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$150"
			quid       	"3B69DB15008A"
			roles      	(list role_list
			    (object Role "$UNNAMED$151"
				quid       	"3B69DB160096"
				supplier   	"Logical View::xsd::XSDModelGroupDefinition"
				quidu      	"3B66ED9A0205"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DB1600A0"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$152"
			quid       	"3B6837AC025A"
			roles      	(list role_list
			    (object Role "$UNNAMED$153"
				quid       	"3B6837AD0338"
				supplier   	"Logical View::xsd::XSDModelGroupDefinition"
				quidu      	"3B66ED9A0205"
				is_aggregate 	TRUE)
			    (object Role "modelGroup"
				quid       	"3B6837AD0339"
				label      	"modelGroup"
				supplier   	"Logical View::xsd::XSDModelGroup"
				quidu      	"3B6834E00291"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$154"
			quid       	"3B6B42450398"
			roles      	(list role_list
			    (object Role "$UNNAMED$155"
				quid       	"3B6B4249038A"
				supplier   	"Logical View::xsd::XSDModelGroupDefinition"
				quidu      	"3B66ED9A0205"
				is_aggregate 	TRUE)
			    (object Role "resolvedModelGroupDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6B4249039E"
				label      	"resolvedModelGroupDefinition"
				supplier   	"Logical View::xsd::XSDModelGroupDefinition"
				quidu      	"3B66ED9A0205"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$156"
			quid       	"3B69DB0F0212"
			roles      	(list role_list
			    (object Role "$UNNAMED$157"
				quid       	"3B69DB1000C9"
				supplier   	"Logical View::xsd::XSDNotationDeclaration"
				quidu      	"3B66EDAA021C"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DB1000D3"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$158"
			quid       	"3B6B47150119"
			roles      	(list role_list
			    (object Role "$UNNAMED$159"
				quid       	"3B6B471A03AB"
				supplier   	"Logical View::xsd::XSDParticle"
				quidu      	"3B682BBD01F7"
				is_aggregate 	TRUE)
			    (object Role "content"
				quid       	"3B6B471A03B5"
				label      	"content"
				supplier   	"Logical View::xsd::XSDParticleContent"
				quidu      	"3B6BD22300C6"
				client_cardinality 	(value cardinality "1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$160"
			quid       	"3B683C890122"
			roles      	(list role_list
			    (object Role "$UNNAMED$161"
				quid       	"3B683C8A0110"
				supplier   	"Logical View::xsd::XSDParticle"
				quidu      	"3B682BBD01F7"
				is_aggregate 	TRUE)
			    (object Role "term"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B683C8A0111"
				label      	"term"
				supplier   	"Logical View::xsd::XSDTerm"
				quidu      	"3B683C5E0174"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$162"
			quid       	"3B6ADE42009A"
			roles      	(list role_list
			    (object Role "$UNNAMED$163"
				quid       	"3B6ADE4302FE"
				supplier   	"Logical View::xsd::XSDRedefine"
				quidu      	"3B688C9B02AD"
				is_aggregate 	TRUE)
			    (object Role "annotations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6ADE430308"
				label      	"annotations"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$164"
			quid       	"3B6AE8240051"
			roles      	(list role_list
			    (object Role "$UNNAMED$165"
				quid       	"3B6AE82602AD"
				supplier   	"Logical View::xsd::XSDRedefine"
				quidu      	"3B688C9B02AD"
				is_aggregate 	TRUE)
			    (object Role "contents"
				quid       	"3B6AE82602B7"
				label      	"contents"
				supplier   	"Logical View::xsd::XSDRedefineContent"
				quidu      	"3B6AE2060172"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$166"
			quid       	"3B688E6B003D"
			roles      	(list role_list
			    (object Role "$UNNAMED$167"
				quid       	"3B688E6C0107"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "contents"
				quid       	"3B688E6C0111"
				label      	"contents"
				supplier   	"Logical View::xsd::XSDSchemaContent"
				quidu      	"3B688CB800BA"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$168"
			quid       	"3B66EE8D01BF"
			roles      	(list role_list
			    (object Role "$UNNAMED$169"
				quid       	"3B66EE8E0198"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "elementDeclarations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B66EE8E0199"
				label      	"elementDeclarations"
				supplier   	"Logical View::xsd::XSDElementDeclaration"
				quidu      	"3B66ED580214"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$170"
			quid       	"3B66FDFA00C3"
			roles      	(list role_list
			    (object Role "$UNNAMED$171"
				quid       	"3B66FDFB027D"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "attributeDeclarations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B66FDFB027E"
				label      	"attributeDeclarations"
				supplier   	"Logical View::xsd::XSDAttributeDeclaration"
				quidu      	"3B66ED2E0192"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$172"
			quid       	"3B66EE920216"
			roles      	(list role_list
			    (object Role "$UNNAMED$173"
				quid       	"3B66EE93018B"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "attributeGroupDefinitions"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B66EE93018C"
				label      	"attributeGroupDefinitions"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$174"
			quid       	"3B66EE760049"
			roles      	(list role_list
			    (object Role "$UNNAMED$175"
				quid       	"3B66EE760374"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "typeDefinitions"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B66EE76037E"
				label      	"typeDefinitions"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$176"
			quid       	"3B66EEFF024F"
			roles      	(list role_list
			    (object Role "$UNNAMED$177"
				quid       	"3B66EF00025A"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "modelGroupDefinitions"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B66EF000264"
				label      	"modelGroupDefinitions"
				supplier   	"Logical View::xsd::XSDModelGroupDefinition"
				quidu      	"3B66ED9A0205"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$178"
			quid       	"3BFC2A1701ED"
			roles      	(list role_list
			    (object Role "$UNNAMED$179"
				quid       	"3BFC2A1A0273"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "identityConstraintDefinitions"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3BFC2A1A027D"
				label      	"identityConstraintDefinitions"
				supplier   	"Logical View::xsd::XSDIdentityConstraintDefinition"
				quidu      	"3B682B2603A2"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$180"
			quid       	"3B66EEA7023E"
			roles      	(list role_list
			    (object Role "$UNNAMED$181"
				quid       	"3B66EEA8038A"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "notationDeclarations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B66EEA8038B"
				label      	"notationDeclarations"
				supplier   	"Logical View::xsd::XSDNotationDeclaration"
				quidu      	"3B66EDAA021C"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Reference"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$182"
			quid       	"3B69E4560290"
			roles      	(list role_list
			    (object Role "$UNNAMED$183"
				quid       	"3B69E4570165"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "annotations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B69E457016F"
				label      	"annotations"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$184"
			quid       	"3B6D5CA50112"
			roles      	(list role_list
			    (object Role "$UNNAMED$185"
				quid       	"3B6D5CA703B4"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "contents"
				quid       	"3B6D5CA703C8"
				label      	"contents"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$186"
			quid       	"3B6C35AD0374"
			roles      	(list role_list
			    (object Role "$UNNAMED$187"
				quid       	"3B6C35AF0006"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "facetContents"
				quid       	"3B6C35AF0010"
				label      	"facetContents"
				supplier   	"Logical View::xsd::XSDConstrainingFacet"
				quidu      	"3B6C6B340093"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$188"
			quid       	"3BC8AE0203A8"
			roles      	(list role_list
			    (object Role "$UNNAMED$189"
				quid       	"3BC8AE060051"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "facets"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3BC8AE060065"
				label      	"facets"
				supplier   	"Logical View::xsd::XSDConstrainingFacet"
				quidu      	"3B6C6B340093"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$190"
			quid       	"3B6C34B70208"
			roles      	(list role_list
			    (object Role "$UNNAMED$191"
				quid       	"3B6C34BE0258"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "memberTypeDefinitions"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6C34BE0259"
				label      	"memberTypeDefinitions"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$192"
			quid       	"3B6C363201DB"
			roles      	(list role_list
			    (object Role "$UNNAMED$193"
				quid       	"3B6C36350059"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "fundamentalFacets"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3B6C36350063"
				label      	"fundamentalFacets"
				supplier   	"Logical View::xsd::XSDFundamentalFacet"
				quidu      	"3B6C69E801D6"
				client_cardinality 	(value cardinality "1..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$194"
			quid       	"3B6D35AB0273"
			roles      	(list role_list
			    (object Role "$UNNAMED$195"
				quid       	"3B6D35B20291"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "baseTypeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6D35B202A5"
				label      	"baseTypeDefinition"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$196"
			quid       	"3B6D5572016C"
			roles      	(list role_list
			    (object Role "$UNNAMED$197"
				quid       	"3B6D5575022F"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "primitiveTypeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B6D55750243"
				label      	"primitiveTypeDefinition"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$198"
			quid       	"3B69E2910158"
			roles      	(list role_list
			    (object Role "$UNNAMED$199"
				quid       	"3B69E292019F"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69E29201A9"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$200"
			quid       	"3B9006CF0088"
			roles      	(list role_list
			    (object Role "$UNNAMED$201"
				quid       	"3B9006D1015D"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				is_aggregate 	TRUE)
			    (object Role "derivationAnnotation"
				quid       	"3B9006D10167"
				label      	"derivationAnnotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$202"
			quid       	"3B69DB330264"
			roles      	(list role_list
			    (object Role "$UNNAMED$203"
				quid       	"3B69DB340284"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				is_aggregate 	TRUE)
			    (object Role "annotations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3B69DB34028E"
				label      	"annotations"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$204"
			quid       	"3B69DB11026F"
			roles      	(list role_list
			    (object Role "$UNNAMED$205"
				quid       	"3B69DB1201F9"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3B69DB120203"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$206"
			quid       	"3C626EB30005"
			roles      	(list role_list
			    (object Role "$UNNAMED$207"
				quid       	"3C626EB40327"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				is_aggregate 	TRUE)
			    (object Role "annotations"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3C626EB40332"
				label      	"annotations"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$208"
			quid       	"3BEBDC870247"
			roles      	(list role_list
			    (object Role "$UNNAMED$209"
				quid       	"3BEBDC8C02F9"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "attributeWildcardContent"
				quid       	"3BEBDC8C0303"
				label      	"attributeWildcardContent"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$210"
			quid       	"3BFE622703CD"
			roles      	(list role_list
			    (object Role "$UNNAMED$211"
				attributes 	(list Attribute_Set)
				quid       	"3BFE622B0061"
				supplier   	"Logical View::xsd::XSDDiagnostic"
				quidu      	"3BFE5F910046")
			    (object Role "components"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3BFE622B006C"
				label      	"components"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"
				client_cardinality 	(value cardinality "1..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$212"
			quid       	"3BFE62690165"
			roles      	(list role_list
			    (object Role "$UNNAMED$213"
				quid       	"3BFE626A0026"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"
				is_aggregate 	TRUE)
			    (object Role "diagnostics"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3BFE626A0027"
				label      	"diagnostics"
				supplier   	"Logical View::xsd::XSDDiagnostic"
				quidu      	"3BFE5F910046"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$214"
			quid       	"3BFE6431035F"
			roles      	(list role_list
			    (object Role "$UNNAMED$215"
				quid       	"3BFE643201C6"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "allDiagnostics"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3BFE643201C7"
				label      	"allDiagnostics"
				supplier   	"Logical View::xsd::XSDDiagnostic"
				quidu      	"3BFE5F910046"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$216"
			quid       	"3C21DCC700EC"
			roles      	(list role_list
			    (object Role "$UNNAMED$217"
				quid       	"3C21DCCE0042"
				supplier   	"Logical View::xsd::XSDSchemaDirective"
				quidu      	"3B6AD8A202A2"
				is_aggregate 	TRUE)
			    (object Role "resolvedSchema"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3C21DCCE0043"
				label      	"resolvedSchema"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$218"
			quid       	"3C21DD0C03DB"
			roles      	(list role_list
			    (object Role "$UNNAMED$219"
				quid       	"3C21DD100304"
				supplier   	"Logical View::xsd::XSDSchemaCompositor"
				quidu      	"3C21DB4102AE"
				is_aggregate 	TRUE)
			    (object Role "incorporatedSchema"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3C21DD100305"
				label      	"incorporatedSchema"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$220"
			quid       	"3C239134004F"
			roles      	(list role_list
			    (object Role "$UNNAMED$221"
				quid       	"3C23913600CA"
				supplier   	"Logical View::xsd::XSDXPathDefinition"
				quidu      	"3B6D83BB0355"
				is_aggregate 	TRUE)
			    (object Role "annotation"
				quid       	"3C23913600D4"
				label      	"annotation"
				supplier   	"Logical View::xsd::XSDAnnotation"
				quidu      	"3B66EDC80233"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$222"
			quid       	"3C25D3A60131"
			roles      	(list role_list
			    (object Role "$UNNAMED$223"
				quid       	"3C25D3A90370"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB")
			    (object Role "referencingDirectives"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3C25D3A90371"
				label      	"referencingDirectives"
				supplier   	"Logical View::xsd::XSDSchemaDirective"
				quidu      	"3B6AD8A202A2"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$224"
			quid       	"3C25ECF0005E"
			roles      	(list role_list
			    (object Role "$UNNAMED$225"
				quid       	"3C25ECF4001E"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB")
			    (object Role "rootVersion"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C25ECF40028"
				label      	"rootVersion"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$226"
			quid       	"3C25ED0B011B"
			roles      	(list role_list
			    (object Role "$UNNAMED$227"
				quid       	"3C25ED0F0121"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB")
			    (object Role "originalVersion"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C25ED0F012B"
				label      	"originalVersion"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$228"
			quid       	"3C25EEAB001F"
			roles      	(list role_list
			    (object Role "$UNNAMED$229"
				quid       	"3C25EEAF010B"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				is_aggregate 	TRUE)
			    (object Role "incorporatedVersions"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C25EEAF0115"
				label      	"incorporatedVersions"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$230"
			quid       	"3C276DA000DE"
			roles      	(list role_list
			    (object Role "$UNNAMED$231"
				quid       	"3C276DA000DF"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "itemTypeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE))
				quid       	"3C276DA000E0"
				label      	"itemTypeDefinition"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$232"
			quid       	"3C2784730194"
			roles      	(list role_list
			    (object Role "$UNNAMED$233"
				quid       	"3C27847501F1"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB")
			    (object Role "schemaForSchema"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C27847501FB"
				label      	"schemaForSchema"
				supplier   	"Logical View::xsd::XSDSchema"
				quidu      	"374B182500BB"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$234"
			quid       	"3C2880F503D9"
			roles      	(list role_list
			    (object Role "rootTypeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C2880F9003C"
				label      	"rootTypeDefinition"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$235"
				attributes 	(list Attribute_Set)
				quid       	"3C2880F90046"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A")))
		    (object Association "$UNNAMED$236"
			quid       	"3C2882C50137"
			roles      	(list role_list
			    (object Role "$UNNAMED$237"
				attributes 	(list Attribute_Set)
				quid       	"3C2882C70112"
				supplier   	"Logical View::xsd::XSDDiagnostic"
				quidu      	"3BFE5F910046")
			    (object Role "primaryComponent"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C2882C70113"
				label      	"primaryComponent"
				supplier   	"Logical View::xsd::XSDConcreteComponent"
				quidu      	"3B6AD7B40065"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$238"
			quid       	"3C28A0F201A4"
			roles      	(list role_list
			    (object Role "type"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28A0F302E5"
				label      	"type"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$239"
				attributes 	(list Attribute_Set)
				quid       	"3C28A0F302F0"
				supplier   	"Logical View::xsd::XSDFeature"
				quidu      	"3B69B537026C")))
		    (object Association "$UNNAMED$240"
			quid       	"3C28A6DB01E5"
			roles      	(list role_list
			    (object Role "rootType"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28A6DD03DD"
				label      	"rootType"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$241"
				attributes 	(list Attribute_Set)
				quid       	"3C28A6DD03DE"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9")))
		    (object Association "$UNNAMED$242"
			quid       	"3C28A7120108"
			roles      	(list role_list
			    (object Role "baseType"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28A7140151"
				label      	"baseType"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$243"
				attributes 	(list Attribute_Set)
				quid       	"3C28A714015B"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9")))
		    (object Association "$UNNAMED$244"
			quid       	"3C28A74B0178"
			roles      	(list role_list
			    (object Role "simpleType"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28A74D017B"
				label      	"simpleType"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$245"
				attributes 	(list Attribute_Set)
				quid       	"3C28A74D0185"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9")))
		    (object Association "$UNNAMED$246"
			quid       	"3C28A7ED03C0"
			roles      	(list role_list
			    (object Role "complexType"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28A7F40117"
				label      	"complexType"
				supplier   	"Logical View::xsd::XSDParticle"
				quidu      	"3B682BBD01F7"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$247"
				attributes 	(list Attribute_Set)
				quid       	"3C28A7F40121"
				supplier   	"Logical View::xsd::XSDTypeDefinition"
				quidu      	"3B66ECD302A9")))
		    (object Association "$UNNAMED$248"
			quid       	"3C28A994030A"
			roles      	(list role_list
			    (object Role "rootTypeDefinition"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28A99700DD"
				label      	"rootTypeDefinition"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)
			    (object Role "$UNNAMED$249"
				attributes 	(list Attribute_Set)
				quid       	"3C28A99700E7"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D")))
		    (object Association "$UNNAMED$250"
			quid       	"3C28B085025B"
			roles      	(list role_list
			    (object Role "$UNNAMED$251"
				quid       	"3C28B0860270"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "minFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B086027A"
				label      	"minFacet"
				supplier   	"Logical View::xsd::XSDMinFacet"
				quidu      	"3C0A1CDE037C"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$252"
			quid       	"3C28B08D0252"
			roles      	(list role_list
			    (object Role "$UNNAMED$253"
				quid       	"3C28B08E0091"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "maxFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B08E009B"
				label      	"maxFacet"
				supplier   	"Logical View::xsd::XSDMaxFacet"
				quidu      	"3C0A1CEB010E"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$254"
			quid       	"3C28B0AB0396"
			roles      	(list role_list
			    (object Role "$UNNAMED$255"
				quid       	"3C28B0AC03C9"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "maxInclusiveFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0AC03D4"
				label      	"maxInclusiveFacet"
				supplier   	"Logical View::xsd::XSDMaxInclusiveFacet"
				quidu      	"3B6C787D00DA"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$256"
			quid       	"3C28B0AF0338"
			roles      	(list role_list
			    (object Role "$UNNAMED$257"
				quid       	"3C28B0B001F9"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "minInclusiveFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0B00203"
				label      	"minInclusiveFacet"
				supplier   	"Logical View::xsd::XSDMinInclusiveFacet"
				quidu      	"3B6C788702C9"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$258"
			quid       	"3C28B0B30207"
			roles      	(list role_list
			    (object Role "$UNNAMED$259"
				quid       	"3C28B0B40190"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "minExclusiveFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0B4019A"
				label      	"minExclusiveFacet"
				supplier   	"Logical View::xsd::XSDMinExclusiveFacet"
				quidu      	"3B6C792D000A"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$260"
			quid       	"3C28B0B6028D"
			roles      	(list role_list
			    (object Role "$UNNAMED$261"
				quid       	"3C28B0B70217"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "maxExclusiveFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0B70221"
				label      	"maxExclusiveFacet"
				supplier   	"Logical View::xsd::XSDMaxExclusiveFacet"
				quidu      	"3B6C789600C2"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$262"
			quid       	"3C28B0BC0051"
			roles      	(list role_list
			    (object Role "$UNNAMED$263"
				quid       	"3C28B0BC0246"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "lengthFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0BC0250"
				label      	"lengthFacet"
				supplier   	"Logical View::xsd::XSDLengthFacet"
				quidu      	"3B6C776200E7"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$264"
			quid       	"3C28B0BF018C"
			roles      	(list role_list
			    (object Role "$UNNAMED$265"
				quid       	"3C28B0C0006B"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "whiteSpaceFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0C00075"
				label      	"whiteSpaceFacet"
				supplier   	"Logical View::xsd::XSDWhiteSpaceFacet"
				quidu      	"3B6C784601B7"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$266"
			quid       	"3C28B0C2021D"
			roles      	(list role_list
			    (object Role "$UNNAMED$267"
				quid       	"3C28B0C300AB"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "enumerationFacets"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0C300AC"
				label      	"enumerationFacets"
				supplier   	"Logical View::xsd::XSDEnumerationFacet"
				quidu      	"3B6C6ACE0141"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$268"
			quid       	"3C28B0C50159"
			roles      	(list role_list
			    (object Role "$UNNAMED$269"
				quid       	"3C28B0C600B0"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "patternFacets"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0C600BA"
				label      	"patternFacets"
				supplier   	"Logical View::xsd::XSDPatternFacet"
				quidu      	"3B6C6ADB026C"
				client_cardinality 	(value cardinality "0..n")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$270"
			quid       	"3C28B0C802A7"
			roles      	(list role_list
			    (object Role "$UNNAMED$271"
				quid       	"3C28B0C901EA"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "cardinalityFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0C901F5"
				label      	"cardinalityFacet"
				supplier   	"Logical View::xsd::XSDCardinalityFacet"
				quidu      	"3B6C755D03D2"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$272"
			quid       	"3C28B0CB039C"
			roles      	(list role_list
			    (object Role "$UNNAMED$273"
				quid       	"3C28B0CC03D0"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "numericFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0CC03D1"
				label      	"numericFacet"
				supplier   	"Logical View::xsd::XSDNumericFacet"
				quidu      	"3B6C75950206"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$274"
			quid       	"3C28B0CF0199"
			roles      	(list role_list
			    (object Role "$UNNAMED$275"
				quid       	"3C28B0D20085"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "maxLengthFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0D2008F"
				label      	"maxLengthFacet"
				supplier   	"Logical View::xsd::XSDMaxLengthFacet"
				quidu      	"3B6C77C70146"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$276"
			quid       	"3C28B0D500C5"
			roles      	(list role_list
			    (object Role "$UNNAMED$277"
				quid       	"3C28B0D6001D"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "minLengthFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0D60027"
				label      	"minLengthFacet"
				supplier   	"Logical View::xsd::XSDMinLengthFacet"
				quidu      	"3B6C778C0065"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$278"
			quid       	"3C28B0D800DE"
			roles      	(list role_list
			    (object Role "$UNNAMED$279"
				quid       	"3C28B0D803CD"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "totalDigitsFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0D803D7"
				label      	"totalDigitsFacet"
				supplier   	"Logical View::xsd::XSDTotalDigitsFacet"
				quidu      	"3B6C79A0020E"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$280"
			quid       	"3C28B0DB0377"
			roles      	(list role_list
			    (object Role "$UNNAMED$281"
				quid       	"3C28B0DC035A"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "fractionDigitsFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0DC0364"
				label      	"fractionDigitsFacet"
				supplier   	"Logical View::xsd::XSDFractionDigitsFacet"
				quidu      	"3B6C79BE02EE"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$282"
			quid       	"3C28B0DF0048"
			roles      	(list role_list
			    (object Role "$UNNAMED$283"
				quid       	"3C28B0DF03B9"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "orderedFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0DF03C3"
				label      	"orderedFacet"
				supplier   	"Logical View::xsd::XSDOrderedFacet"
				quidu      	"3B6C74DD0248"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$284"
			quid       	"3C28B0E300D9"
			roles      	(list role_list
			    (object Role "$UNNAMED$285"
				quid       	"3C28B0E4038E"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "boundedFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B0E40398"
				label      	"boundedFacet"
				supplier   	"Logical View::xsd::XSDBoundedFacet"
				quidu      	"3B6C751D0344"
				client_cardinality 	(value cardinality "1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$286"
			quid       	"3C28B44401EC"
			roles      	(list role_list
			    (object Role "$UNNAMED$287"
				quid       	"3C28B4450360"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveMaxFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B445036A"
				label      	"effectiveMaxFacet"
				supplier   	"Logical View::xsd::XSDMaxFacet"
				quidu      	"3C0A1CEB010E"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$288"
			quid       	"3C28B54F0145"
			roles      	(list role_list
			    (object Role "$UNNAMED$289"
				quid       	"3C28B550038C"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveWhiteSpaceFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B5500396"
				label      	"effectiveWhiteSpaceFacet"
				supplier   	"Logical View::xsd::XSDWhiteSpaceFacet"
				quidu      	"3B6C784601B7"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$290"
			quid       	"3C28B5C4011C"
			roles      	(list role_list
			    (object Role "$UNNAMED$291"
				quid       	"3C28B5C5020D"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveMaxLengthFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B5C50217"
				label      	"effectiveMaxLengthFacet"
				supplier   	"Logical View::xsd::XSDMaxLengthFacet"
				quidu      	"3B6C77C70146"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$292"
			quid       	"3C28B62A00AA"
			roles      	(list role_list
			    (object Role "$UNNAMED$293"
				quid       	"3C28B62B0138"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveFractionDigitsFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B62B0142"
				label      	"effectiveFractionDigitsFacet"
				supplier   	"Logical View::xsd::XSDFractionDigitsFacet"
				quidu      	"3B6C79BE02EE"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$294"
			quid       	"3C28B6B003A6"
			roles      	(list role_list
			    (object Role "$UNNAMED$295"
				quid       	"3C28B6B10311"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectivePatternFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B6B10312"
				label      	"effectivePatternFacet"
				supplier   	"Logical View::xsd::XSDPatternFacet"
				quidu      	"3B6C6ADB026C"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$296"
			quid       	"3C28B7CA026B"
			roles      	(list role_list
			    (object Role "$UNNAMED$297"
				quid       	"3C28B7CB0186"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveEnumerationFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B7CB0190"
				label      	"effectiveEnumerationFacet"
				supplier   	"Logical View::xsd::XSDEnumerationFacet"
				quidu      	"3B6C6ACE0141"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$298"
			quid       	"3C28B8400062"
			roles      	(list role_list
			    (object Role "$UNNAMED$299"
				quid       	"3C28B841001D"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveTotalDigitsFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B8410027"
				label      	"effectiveTotalDigitsFacet"
				supplier   	"Logical View::xsd::XSDTotalDigitsFacet"
				quidu      	"3B6C79A0020E"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$300"
			quid       	"3C28B898016D"
			roles      	(list role_list
			    (object Role "$UNNAMED$301"
				quid       	"3C28B8990056"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveMinLengthFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B8990060"
				label      	"effectiveMinLengthFacet"
				supplier   	"Logical View::xsd::XSDMinLengthFacet"
				quidu      	"3B6C778C0065"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$302"
			quid       	"3C28B8DC0052"
			roles      	(list role_list
			    (object Role "$UNNAMED$303"
				quid       	"3C28B8DC03B9"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveLengthFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B8DC03C3"
				label      	"effectiveLengthFacet"
				supplier   	"Logical View::xsd::XSDLengthFacet"
				quidu      	"3B6C776200E7"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$304"
			quid       	"3C28B97001DB"
			roles      	(list role_list
			    (object Role "$UNNAMED$305"
				quid       	"3C28B97100CF"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "effectiveMinFacet"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isVolatile"
					value      	TRUE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isChangeable"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isResolveProxies"
					value      	FALSE)
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3C28B97100D9"
				label      	"effectiveMinFacet"
				supplier   	"Logical View::xsd::XSDMinFacet"
				quidu      	"3C0A1CDE037C"
				client_cardinality 	(value cardinality "0..1")
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$306"
			quid       	"3D4BB4AE01CC"
			roles      	(list role_list
			    (object Role "$UNNAMED$307"
				quid       	"3D4BB4AF010F"
				supplier   	"Logical View::xsd::XSDSimpleTypeDefinition"
				quidu      	"3B682BA7005D"
				is_aggregate 	TRUE)
			    (object Role "syntheticFacets"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3D4BB4AF011A"
				label      	"syntheticFacets"
				supplier   	"Logical View::xsd::XSDFacet"
				quidu      	"3B6C359403D2"
				client_cardinality 	(value cardinality "0..n")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$308"
			quid       	"3D4BB4D3028E"
			roles      	(list role_list
			    (object Role "$UNNAMED$309"
				quid       	"3D4BB4D402F3"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "syntheticParticle"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3D4BB4D402FD"
				label      	"syntheticParticle"
				supplier   	"Logical View::xsd::XSDParticle"
				quidu      	"3B682BBD01F7"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$310"
			quid       	"3D4BB4D901F6"
			roles      	(list role_list
			    (object Role "$UNNAMED$311"
				quid       	"3D4BB4DA0284"
				supplier   	"Logical View::xsd::XSDComplexTypeDefinition"
				quidu      	"3B682B82031A"
				is_aggregate 	TRUE)
			    (object Role "syntheticWildcard"
				attributes 	(list Attribute_Set
				    (object Attribute
					tool       	"Ecore"
					name       	"isTransient"
					value      	TRUE))
				quid       	"3D4BB4DA028E"
				label      	"syntheticWildcard"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE)))
		    (object Association "$UNNAMED$312"
			quid       	"3D4C68FF01BF"
			roles      	(list role_list
			    (object Role "$UNNAMED$313"
				quid       	"3D4C69020317"
				supplier   	"Logical View::xsd::XSDAttributeGroupDefinition"
				quidu      	"3B66ED840290"
				is_aggregate 	TRUE)
			    (object Role "syntheticWildcard"
				quid       	"3D4C69020318"
				label      	"syntheticWildcard"
				supplier   	"Logical View::xsd::XSDWildcard"
				quidu      	"3B6838370031"
				client_cardinality 	(value cardinality "0..1")
				Containment 	"By Value"
				is_navigable 	TRUE))))
		logical_presentations 	(list unit_reference_list
		    (object ClassDiagram "1. Component Hierarchy (Part 1: Structures)"
			quid       	"3B6847680138"
			title      	"1. Component Hierarchy (Part 1: Structures)"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDComponent" @387
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(928, 80)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@387
				    location   	(766, 37)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846E90029"
				width      	342
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDNamedComponent" @388
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1168, 560)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@388
				    location   	(940, 517)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	456
				    justify    	0
				    label      	"XSDNamedComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846D303A4"
				width      	474
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @389
				location   	(928, 225)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@387
				vertices   	(list Points
				    (928, 225)
				    (928, 135)))
			    (object ClassView "Class" "Logical View::xsd::XSDTerm" @390
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1568, 320)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@390
				    location   	(1460, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	216
				    justify    	0
				    label      	"XSDTerm")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B683C5E0174"
				width      	234
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @391
				location   	(1203, 706)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@388
				vertices   	(list Points
				    (1203, 706)
				    (1203, 615)))
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeContent" @392
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(624, 560)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@392
				    location   	(372, 517)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	504
				    justify    	0
				    label      	"XSDComplexTypeContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B683BA00196"
				width      	522
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @393
				location   	(444, 709)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@392
				vertices   	(list Points
				    (444, 709)
				    (444, 615)))
			    (object InheritTreeView "" @394
				location   	(1572, 465)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@390
				vertices   	(list Points
				    (1572, 465)
				    (1572, 375)))
			    (object ClassView "Class" "Logical View::xsd::XSDParticle" @395
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(416, 800)
				label      	(object ItemLabel
				    Parent_View 	@395
				    location   	(290, 757)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	252
				    justify    	0
				    label      	"XSDParticle")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BBD01F7"
				width      	270
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @396
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(448, 1056)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@396
				    location   	(262, 1013)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	372
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B66ECD302A9"
				width      	390
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeUse" @397
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1104, 320)
				label      	(object ItemLabel
				    Parent_View 	@397
				    location   	(936, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	336
				    justify    	0
				    label      	"XSDAttributeUse")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B68354601A8"
				width      	354
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @398
				location   	(453, 1203)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@396
				vertices   	(list Points
				    (453, 1203)
				    (453, 1111)))
			    (object ClassView "Class" "Logical View::xsd::XSDScope" @399
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(176, 320)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@399
				    location   	(62, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	228
				    justify    	0
				    label      	"XSDScope")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B54000F2"
				width      	246
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDFeature" @400
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1872, 800)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@400
				    location   	(1746, 757)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	252
				    justify    	0
				    label      	"XSDFeature")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B537026C"
				width      	270
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @401
				location   	(1872, 950)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@400
				vertices   	(list Points
				    (1872, 950)
				    (1872, 855)))
			    (object InheritTreeView "" @402
				location   	(181, 465)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@399
				vertices   	(list Points
				    (181, 465)
				    (181, 375)))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeDeclaration" @403
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1936, 1280)
				label      	(object ItemLabel
				    Parent_View 	@403
				    location   	(1670, 1233)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	532
				    justify    	0
				    label      	"XSDAttributeDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED2E0192"
				width      	550
				height     	118
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @404
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1968, 1056)
				label      	(object ItemLabel
				    Parent_View 	@404
				    location   	(1734, 1013)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	468
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				width      	486
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDIdentityConstraintDefinition" @405
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1888, 1488)
				label      	(object ItemLabel
				    Parent_View 	@405
				    location   	(1569, 1444)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	638
				    justify    	0
				    label      	"XSDIdentityConstraintDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B2603A2"
				width      	656
				height     	112
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDNotationDeclaration" @406
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1184, 1488)
				label      	(object ItemLabel
				    Parent_View 	@406
				    location   	(903, 1444)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	563
				    justify    	0
				    label      	"XSDNotationDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDAA021C"
				width      	581
				height     	112
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDWildcard" @407
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1600, 560)
				label      	(object ItemLabel
				    Parent_View 	@407
				    location   	(1462, 517)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	276
				    justify    	0
				    label      	"XSDWildcard")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6838370031"
				width      	294
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroupDefinition" @408
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1024, 1056)
				label      	(object ItemLabel
				    Parent_View 	@408
				    location   	(778, 1013)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	492
				    justify    	0
				    label      	"XSDModelGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED9A0205"
				width      	510
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroup" @409
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1968, 560)
				label      	(object ItemLabel
				    Parent_View 	@409
				    location   	(1806, 517)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDModelGroup")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6834E00291"
				width      	342
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @410
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(352, 1296)
				label      	(object ItemLabel
				    Parent_View 	@410
				    location   	(106, 1253)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	492
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				width      	510
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @411
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(192, 560)
				label      	(object ItemLabel
				    Parent_View 	@411
				    location   	(60, 517)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	264
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	282
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupDefinition" @412
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1072, 1280)
				label      	(object ItemLabel
				    Parent_View 	@412
				    location   	(802, 1237)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	540
				    justify    	0
				    label      	"XSDAttributeGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED840290"
				width      	558
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @413
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(368, 1488)
				label      	(object ItemLabel
				    Parent_View 	@413
				    location   	(30, 1441)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	676
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				width      	694
				height     	119
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAnnotation" @414
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(576, 320)
				label      	(object ItemLabel
				    Parent_View 	@414
				    location   	(426, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	300
				    justify    	0
				    label      	"XSDAnnotation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDC80233"
				width      	318
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDXPathDefinition" @415
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2000, 320)
				label      	(object ItemLabel
				    Parent_View 	@415
				    location   	(1808, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	384
				    justify    	0
				    label      	"XSDXPathDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6D83BB0355"
				width      	402
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @416
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B72D7BB0349"
				client     	@397
				supplier   	@387
				line_style 	3
				origin_attachment 	(1094, 265)
				terminal_attachment 	(1094, 225)
				drawSupplier 	@389)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefinableComponent" @417
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(960, 800)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@417
				    location   	(690, 757)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	540
				    justify    	0
				    label      	"XSDRedefinableComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B7FCA8B020B"
				width      	558
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @418
				location   	(962, 947)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@417
				vertices   	(list Points
				    (962, 947)
				    (962, 855)))
			    (object InheritView "" @419
				stereotype 	(object SegLabel @420
				    Parent_View 	@419
				    location   	(218, 1154)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	212
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.163534
				    height     	69
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B685F55032B"
				client     	@410
				supplier   	@392
				line_style 	3
				origin_attachment 	(149, 1241)
				terminal_attachment 	(149, 709)
				drawSupplier 	@393)
			    (object InheritView "" @421
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A1302A2"
				client     	@410
				supplier   	@396
				line_style 	3
				origin_attachment 	(256, 1241)
				terminal_attachment 	(256, 1203)
				drawSupplier 	@398)
			    (object InheritView "" @422
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCC4A0182"
				client     	@411
				supplier   	@399
				line_style 	3
				origin_attachment 	(284, 505)
				terminal_attachment 	(284, 465)
				drawSupplier 	@402)
			    (object InheritView "" @423
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A640279"
				client     	@409
				supplier   	@390
				line_style 	3
				origin_attachment 	(2002, 505)
				terminal_attachment 	(2002, 465)
				drawSupplier 	@394)
			    (object InheritView "" @424
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6848AA01D3"
				client     	@390
				supplier   	@387
				line_style 	3
				origin_attachment 	(1569, 265)
				terminal_attachment 	(1569, 225)
				drawSupplier 	@389)
			    (object InheritView "" @425
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A3A0041"
				client     	@407
				supplier   	@390
				line_style 	3
				origin_attachment 	(1490, 505)
				terminal_attachment 	(1490, 465)
				drawSupplier 	@394)
			    (object InheritView "" @426
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6848FC01E7"
				client     	@395
				supplier   	@392
				line_style 	3
				origin_attachment 	(510, 745)
				terminal_attachment 	(510, 709)
				drawSupplier 	@393)
			    (object InheritView "" @427
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAC800D2"
				client     	@412
				supplier   	@417
				line_style 	3
				origin_attachment 	(1321, 1225)
				terminal_attachment 	(1321, 947)
				drawSupplier 	@418)
			    (object InheritView "" @428
				stereotype 	(object SegLabel @429
				    Parent_View 	@428
				    location   	(2137, 886)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	238
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.215812
				    height     	64
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B685F17002E"
				client     	@404
				supplier   	@390
				line_style 	3
				origin_attachment 	(2200, 1001)
				terminal_attachment 	(2200, 465)
				drawSupplier 	@394)
			    (object InheritView "" @430
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69EDEE01BF"
				client     	@404
				supplier   	@400
				line_style 	3
				origin_attachment 	(2093, 1001)
				terminal_attachment 	(2093, 950)
				drawSupplier 	@401)
			    (object InheritView "" @431
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAB1004D"
				client     	@396
				supplier   	@417
				line_style 	3
				origin_attachment 	(450, 1001)
				terminal_attachment 	(450, 947)
				drawSupplier 	@418)
			    (object InheritView "" @432
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCD640231"
				client     	@399
				supplier   	@387
				line_style 	3
				origin_attachment 	(147, 265)
				terminal_attachment 	(147, 225)
				drawSupplier 	@389)
			    (object InheritView "" @433
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D84F70092"
				client     	@415
				supplier   	@387
				line_style 	3
				origin_attachment 	(2012, 265)
				terminal_attachment 	(2012, 225)
				drawSupplier 	@389)
			    (object InheritView "" @434
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6848B80286"
				client     	@392
				supplier   	@387
				line_style 	3
				origin_attachment 	(834, 505)
				terminal_attachment 	(834, 225)
				drawSupplier 	@389)
			    (object InheritView "" @435
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0CEA20197"
				client     	@388
				supplier   	@387
				line_style 	3
				origin_attachment 	(1350, 505)
				terminal_attachment 	(1350, 225)
				drawSupplier 	@389)
			    (object InheritView "" @436
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69E1770116"
				client     	@414
				supplier   	@387
				line_style 	3
				origin_attachment 	(572, 265)
				terminal_attachment 	(572, 225)
				drawSupplier 	@389)
			    (object InheritView "" @437
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69B7DC0193"
				client     	@403
				supplier   	@400
				line_style 	3
				origin_attachment 	(1693, 1221)
				terminal_attachment 	(1693, 950)
				drawSupplier 	@401)
			    (object InheritView "" @438
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684AA30242"
				client     	@405
				supplier   	@388
				line_style 	3
				origin_attachment 	(1590, 1432)
				terminal_attachment 	(1590, 706)
				drawSupplier 	@391)
			    (object InheritView "" @439
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B68494302F1"
				client     	@406
				supplier   	@388
				line_style 	3
				origin_attachment 	(1431, 1432)
				terminal_attachment 	(1431, 706)
				drawSupplier 	@391)
			    (object InheritView "" @440
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A26036D"
				client     	@417
				supplier   	@388
				line_style 	3
				origin_attachment 	(959, 745)
				terminal_attachment 	(959, 706)
				drawSupplier 	@391)
			    (object InheritView "" @441
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A2C0307"
				client     	@400
				supplier   	@388
				line_style 	3
				origin_attachment 	(1872, 745)
				terminal_attachment 	(1872, 706)
				drawSupplier 	@391)
			    (object InheritView "" @442
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAC40090"
				client     	@408
				supplier   	@417
				line_style 	3
				origin_attachment 	(962, 1001)
				terminal_attachment 	(962, 947)
				drawSupplier 	@418)
			    (object InheritView "" @443
				stereotype 	(object SegLabel @444
				    Parent_View 	@443
				    location   	(95, 1388)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	187
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.042531
				    height     	67
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B69BAA20310"
				client     	@413
				supplier   	@399
				line_style 	3
				origin_attachment 	(28, 1429)
				terminal_attachment 	(28, 465)
				drawSupplier 	@402)
			    (object InheritView "" @445
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0D01901F1"
				client     	@413
				supplier   	@396
				line_style 	3
				origin_attachment 	(656, 1429)
				terminal_attachment 	(656, 1203)
				drawSupplier 	@398)))
		    (object ClassDiagram "2. Component Relations (Part 1 : Structures)"
			quid       	"374B18190028"
			title      	"2. Component Relations (Part 1 : Structures)"
			zoom       	96
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDScope" @446
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(784, 1632)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@446
				    location   	(670, 1591)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	228
				    justify    	0
				    label      	"XSDScope")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B54000F2"
				width      	246
				height     	107
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDFeature" @447
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(192, 1632)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@447
				    location   	(66, 1591)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	252
				    justify    	0
				    label      	"XSDFeature")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B537026C"
				width      	270
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$128" @448
				location   	(494, 1627)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69B653017A"
				roleview_list 	(list RoleViews
				    (object RoleView "scope" @449
					Parent_View 	@448
					location   	(286, -485)
					label      	(object SegLabel @450
					    Parent_View 	@449
					    location   	(555, 1589)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	132
					    justify    	0
					    label      	"+scope"
					    pctDist    	0.371257
					    height     	39
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69B654006D"
					client     	@448
					supplier   	@446
					line_style 	3
					origin_attachment 	(494, 1627)
					terminal_attachment 	(661, 1627)
					label      	(object SegLabel @451
					    Parent_View 	@449
					    location   	(576, 1664)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.491018
					    height     	37
					    orientation 	1))
				    (object RoleView "$UNNAMED$129" @452
					Parent_View 	@448
					location   	(286, -485)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69B654006E"
					client     	@448
					supplier   	@447
					line_style 	3
					origin_attachment 	(494, 1627)
					terminal_attachment 	(327, 1627))))
			    (object ClassView "Class" "Logical View::xsd::XSDTerm" @453
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2192, 1232)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@453
				    location   	(2084, 1191)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	216
				    justify    	0
				    label      	"XSDTerm")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B683C5E0174"
				width      	234
				height     	107
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDParticle" @454
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2176, 992)
				label      	(object ItemLabel
				    Parent_View 	@454
				    location   	(2051, 951)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	250
				    justify    	0
				    label      	"XSDParticle")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BBD01F7"
				width      	268
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$160" @455
				location   	(2229, 1112)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B683C890122"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$161" @456
					Parent_View 	@455
					location   	(549, -248)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B683C8A0110"
					client     	@455
					supplier   	@454
					line_style 	3
					origin_attachment 	(2229, 1112)
					terminal_attachment 	(2229, 1045))
				    (object RoleView "term" @457
					Parent_View 	@455
					location   	(549, -248)
					label      	(object SegLabel @458
					    Parent_View 	@457
					    location   	(2157, 1121)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	108
					    justify    	0
					    label      	"+term"
					    pctDist    	0.134328
					    height     	72
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B683C8A0111"
					client     	@455
					supplier   	@453
					line_style 	3
					origin_attachment 	(2229, 1112)
					terminal_attachment 	(2229, 1179)
					label      	(object SegLabel @459
					    Parent_View 	@457
					    location   	(2274, 1119)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.119403
					    height     	45
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeContent" @460
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1328, 1232)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@460
				    location   	(1076, 1191)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	504
				    justify    	0
				    label      	"XSDComplexTypeContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B683BA00196"
				width      	522
				height     	107
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroup" @461
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2144, 768)
				label      	(object ItemLabel
				    Parent_View 	@461
				    location   	(1977, 727)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	334
				    justify    	0
				    label      	"XSDModelGroup")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6834E00291"
				width      	352
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$148" @462
				location   	(2219, 880)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B683606026F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$149" @463
					Parent_View 	@462
					location   	(-357, -240)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6836070221"
					client     	@462
					supplier   	@461
					line_style 	3
					origin_attachment 	(2219, 880)
					terminal_attachment 	(2219, 821))
				    (object RoleView "particles" @464
					Parent_View 	@462
					location   	(-357, -240)
					label      	(object SegLabel @465
					    Parent_View 	@464
					    location   	(2105, 888)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+particles"
					    pctDist    	0.156627
					    height     	115
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6836070222"
					client     	@462
					supplier   	@454
					line_style 	3
					origin_attachment 	(2219, 880)
					terminal_attachment 	(2219, 939)
					label      	(object SegLabel @466
					    Parent_View 	@464
					    location   	(2281, 888)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"1..*"
					    pctDist    	0.156627
					    height     	62
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDWildcard" @467
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1776, 992)
				label      	(object ItemLabel
				    Parent_View 	@467
				    location   	(1639, 951)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	274
				    justify    	0
				    label      	"XSDWildcard")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6838370031"
				width      	292
				height     	107
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeUse" @468
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1072, 1424)
				label      	(object ItemLabel
				    Parent_View 	@468
				    location   	(905, 1383)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	334
				    justify    	0
				    label      	"XSDAttributeUse")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B68354601A8"
				width      	352
				height     	107
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @469
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(432, 992)
				label      	(object ItemLabel
				    Parent_View 	@469
				    location   	(187, 951)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	490
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				width      	508
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$194" @470
				location   	(590, 1140)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D35AB0273"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$195" @471
					Parent_View 	@470
					location   	(302, 148)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D35B20291"
					client     	@470
					supplier   	@469
					vertices   	(list Points
					    (590, 1140)
					    (540, 1140)
					    (540, 1045))
					line_style 	3
					origin_attachment 	(590, 1140)
					terminal_attachment 	(540, 1045))
				    (object RoleView "baseTypeDefinition" @472
					Parent_View 	@470
					location   	(302, 148)
					label      	(object SegLabel @473
					    Parent_View 	@472
					    location   	(643, 1171)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+baseTypeDefinition"
					    pctDist    	1.053571
					    height     	31
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D35B202A5"
					client     	@470
					supplier   	@469
					vertices   	(list Points
					    (590, 1140)
					    (641, 1140)
					    (641, 1045))
					line_style 	3
					origin_attachment 	(590, 1140)
					terminal_attachment 	(641, 1045)
					label      	(object SegLabel @474
					    Parent_View 	@472
					    location   	(584, 1097)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.122449
					    height     	44
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @475
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1008, 992)
				label      	(object ItemLabel
				    Parent_View 	@475
				    location   	(745, 951)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	526
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				width      	544
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$96" @476
				location   	(1119, 1112)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6837DF024F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$97" @477
					Parent_View 	@476
					location   	(-1569, -8)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6837E100FD"
					client     	@476
					supplier   	@475
					line_style 	3
					origin_attachment 	(1119, 1112)
					terminal_attachment 	(1119, 1045))
				    (object RoleView "contentType" @478
					Parent_View 	@476
					location   	(-1569, -8)
					label      	(object SegLabel @479
					    Parent_View 	@478
					    location   	(1259, 1126)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	252
					    justify    	0
					    label      	"+contentType"
					    pctDist    	0.208955
					    height     	140
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6837E100FE"
					client     	@476
					supplier   	@460
					line_style 	3
					origin_attachment 	(1119, 1112)
					terminal_attachment 	(1119, 1179)
					label      	(object SegLabel @480
					    Parent_View 	@478
					    location   	(1063, 1126)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.208955
					    height     	57
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$102" @481
				location   	(1455, 982)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6851BA0126"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$103" @482
					Parent_View 	@481
					location   	(159, -570)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6851BB0150"
					client     	@481
					supplier   	@475
					line_style 	3
					origin_attachment 	(1455, 982)
					terminal_attachment 	(1280, 982))
				    (object RoleView "attributeWildcard" @483
					Parent_View 	@481
					location   	(159, -570)
					label      	(object SegLabel @484
					    Parent_View 	@483
					    location   	(1445, 929)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	336
					    justify    	0
					    label      	"+attributeWildcard"
					    pctDist    	-0.062857
					    height     	54
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6851BB0151"
					client     	@481
					supplier   	@467
					line_style 	3
					origin_attachment 	(1455, 982)
					terminal_attachment 	(1630, 982)
					label      	(object SegLabel @485
					    Parent_View 	@483
					    location   	(1550, 1022)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.542857
					    height     	40
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$98" @486
				location   	(921, 1208)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B683959006E"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$99" @487
					Parent_View 	@486
					location   	(-871, -376)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6839590349"
					client     	@486
					supplier   	@475
					line_style 	3
					origin_attachment 	(921, 1208)
					terminal_attachment 	(921, 1045))
				    (object RoleView "attributeUses" @488
					Parent_View 	@486
					location   	(-871, -376)
					label      	(object SegLabel @489
					    Parent_View 	@488
					    location   	(778, 1251)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	264
					    justify    	0
					    label      	"+attributeUses"
					    pctDist    	0.269939
					    height     	144
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B683959034A"
					client     	@486
					supplier   	@468
					line_style 	3
					origin_attachment 	(921, 1208)
					terminal_attachment 	(921, 1371)
					label      	(object SegLabel @490
					    Parent_View 	@488
					    location   	(979, 1254)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.288344
					    height     	58
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDXPathDefinition" @491
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1312, 768)
				label      	(object ItemLabel
				    Parent_View 	@491
				    location   	(1122, 727)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	380
				    justify    	0
				    label      	"XSDXPathDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6D83BB0355"
				width      	398
				height     	107
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDNotationDeclaration" @492
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1856, 1632)
				label      	(object ItemLabel
				    Parent_View 	@492
				    location   	(1623, 1591)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	466
				    justify    	0
				    label      	"XSDNotationDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDAA021C"
				width      	484
				height     	107
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroupDefinition" @493
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2048, 448)
				label      	(object ItemLabel
				    Parent_View 	@493
				    location   	(1803, 407)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	490
				    justify    	0
				    label      	"XSDModelGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED9A0205"
				width      	508
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$152" @494
				location   	(2216, 608)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6837AC025A"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$153" @495
					Parent_View 	@494
					location   	(-552, -816)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6837AD0338"
					client     	@494
					supplier   	@493
					line_style 	3
					origin_attachment 	(2216, 608)
					terminal_attachment 	(2216, 501))
				    (object RoleView "modelGroup" @496
					Parent_View 	@494
					location   	(-552, -816)
					label      	(object SegLabel @497
					    Parent_View 	@496
					    location   	(2080, 628)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	252
					    justify    	0
					    label      	"+modelGroup"
					    pctDist    	0.182609
					    height     	137
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6837AD0339"
					client     	@494
					supplier   	@461
					line_style 	3
					origin_attachment 	(2216, 608)
					terminal_attachment 	(2216, 715)
					label      	(object SegLabel @498
					    Parent_View 	@496
					    location   	(2256, 633)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.233645
					    height     	40
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupDefinition" @499
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1888, 1424)
				label      	(object ItemLabel
				    Parent_View 	@499
				    location   	(1619, 1383)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	538
				    justify    	0
				    label      	"XSDAttributeGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED840290"
				width      	556
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$82" @500
				location   	(1676, 1208)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6887BF0150"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$83" @501
					Parent_View 	@500
					location   	(412, -344)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6887C000A7"
					client     	@500
					supplier   	@499
					line_style 	3
					origin_attachment 	(1676, 1208)
					terminal_attachment 	(1676, 1371))
				    (object RoleView "attributeWildcard" @502
					Parent_View 	@500
					location   	(412, -344)
					label      	(object SegLabel @503
					    Parent_View 	@502
					    location   	(1857, 1106)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	336
					    justify    	0
					    label      	"+attributeWildcard"
					    pctDist    	0.625767
					    height     	181
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6887C000A8"
					client     	@500
					supplier   	@467
					line_style 	3
					origin_attachment 	(1676, 1208)
					terminal_attachment 	(1676, 1045)
					label      	(object SegLabel @504
					    Parent_View 	@502
					    location   	(1618, 1108)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.619632
					    height     	59
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$78" @505
				location   	(1429, 1438)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B68359F0086"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$79" @506
					Parent_View 	@505
					location   	(-363, -146)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6835A00069"
					client     	@505
					supplier   	@499
					line_style 	3
					origin_attachment 	(1429, 1438)
					terminal_attachment 	(1610, 1438))
				    (object RoleView "attributeUses" @507
					Parent_View 	@505
					location   	(-363, -146)
					label      	(object SegLabel @508
					    Parent_View 	@507
					    location   	(1405, 1506)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	264
					    justify    	0
					    label      	"+attributeUses"
					    pctDist    	0.132597
					    height     	68
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6835A0006A"
					client     	@505
					supplier   	@468
					line_style 	3
					origin_attachment 	(1429, 1438)
					terminal_attachment 	(1248, 1438)
					label      	(object SegLabel @509
					    Parent_View 	@507
					    location   	(1327, 1391)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.563536
					    height     	48
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeDeclaration" @510
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(416, 1424)
				label      	(object ItemLabel
				    Parent_View 	@510
				    location   	(183, 1383)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	466
				    justify    	0
				    label      	"XSDAttributeDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED2E0192"
				width      	484
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$86" @511
				location   	(777, 1425)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B683585010D"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$87" @512
					Parent_View 	@511
					location   	(-519, -367)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B68358600FA"
					client     	@511
					supplier   	@468
					line_style 	3
					origin_attachment 	(777, 1425)
					terminal_attachment 	(896, 1425))
				    (object RoleView "attributeDeclaration" @513
					Parent_View 	@511
					location   	(-519, -367)
					label      	(object SegLabel @514
					    Parent_View 	@513
					    location   	(784, 1508)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+attributeDeclaration"
					    pctDist    	-0.059259
					    height     	83
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B68358600FB"
					client     	@511
					supplier   	@510
					line_style 	3
					origin_attachment 	(777, 1425)
					terminal_attachment 	(658, 1425)
					label      	(object SegLabel @515
					    Parent_View 	@513
					    location   	(721, 1385)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.472441
					    height     	41
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$70" @516
				location   	(237, 1208)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B68356B02CB"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$71" @517
					Parent_View 	@516
					location   	(-1043, 72)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B68356D00A6"
					client     	@516
					supplier   	@510
					line_style 	3
					origin_attachment 	(237, 1208)
					terminal_attachment 	(237, 1371))
				    (object RoleView "typeDefinition" @518
					Parent_View 	@516
					location   	(-1043, 72)
					label      	(object SegLabel @519
					    Parent_View 	@518
					    location   	(388, 1247)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+typeDefinition"
					    pctDist    	-0.239264
					    height     	151
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B68356D00A7"
					client     	@516
					supplier   	@469
					line_style 	3
					origin_attachment 	(237, 1208)
					terminal_attachment 	(237, 1045)
					label      	(object SegLabel @520
					    Parent_View 	@518
					    location   	(195, 1247)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.239264
					    height     	43
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @521
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(384, 784)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@521
				    location   	(198, 743)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	372
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B66ECD302A9"
				width      	390
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$92" @522
				location   	(728, 775)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6833350340"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$93" @523
					Parent_View 	@522
					location   	(-856, -57)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B683336028D"
					client     	@522
					supplier   	@475
					vertices   	(list Points
					    (728, 775)
					    (788, 775)
					    (788, 939))
					line_style 	3
					origin_attachment 	(728, 775)
					terminal_attachment 	(788, 939))
				    (object RoleView "baseTypeDefinition" @524
					Parent_View 	@522
					location   	(-856, -57)
					label      	(object SegLabel @525
					    Parent_View 	@524
					    location   	(558, 883)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+baseTypeDefinition"
					    pctDist    	1.140940
					    height     	108
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B683336028E"
					client     	@522
					supplier   	@521
					line_style 	3
					origin_attachment 	(728, 775)
					terminal_attachment 	(579, 775)
					label      	(object SegLabel @526
					    Parent_View 	@524
					    location   	(750, 812)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.152439
					    height     	37
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDIdentityConstraintDefinition" @527
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1312, 448)
				label      	(object ItemLabel
				    Parent_View 	@527
				    location   	(1017, 407)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	590
				    justify    	0
				    label      	"XSDIdentityConstraintDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B2603A2"
				width      	608
				height     	107
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$134" @528
				location   	(1629, 574)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69D29E014D"
				roleview_list 	(list RoleViews
				    (object RoleView "referencedKey" @529
					Parent_View 	@528
					location   	(-83, 94)
					label      	(object SegLabel @530
					    Parent_View 	@529
					    location   	(1761, 608)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	288
					    justify    	0
					    label      	"+referencedKey"
					    pctDist    	-1.797297
					    height     	34
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69D2A80165"
					client     	@528
					supplier   	@527
					vertices   	(list Points
					    (1629, 574)
					    (1555, 574)
					    (1555, 501))
					line_style 	3
					origin_attachment 	(1629, 574)
					terminal_attachment 	(1555, 501)
					label      	(object SegLabel @531
					    Parent_View 	@529
					    location   	(1622, 539)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.047619
					    height     	36
					    orientation 	1))
				    (object RoleView "$UNNAMED$135" @532
					Parent_View 	@528
					location   	(-83, 94)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69D2A8016F"
					client     	@528
					supplier   	@527
					vertices   	(list Points
					    (1629, 574)
					    (1689, 574)
					    (1689, 444)
					    (1616, 444))
					line_style 	3
					origin_attachment 	(1629, 574)
					terminal_attachment 	(1616, 444))))
			    (object AssociationViewNew "$UNNAMED$138" @533
				location   	(1197, 608)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D8D330025"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$139" @534
					Parent_View 	@533
					location   	(-115, 32)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D330365"
					client     	@533
					supplier   	@527
					line_style 	3
					origin_attachment 	(1197, 608)
					terminal_attachment 	(1197, 501))
				    (object RoleView "fields" @535
					Parent_View 	@533
					location   	(-115, 32)
					label      	(object SegLabel @536
					    Parent_View 	@535
					    location   	(1119, 655)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	120
					    justify    	0
					    label      	"+fields"
					    pctDist    	0.439252
					    height     	78
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D330379"
					client     	@533
					supplier   	@491
					line_style 	3
					origin_attachment 	(1197, 608)
					terminal_attachment 	(1197, 715)
					label      	(object SegLabel @537
					    Parent_View 	@535
					    location   	(1253, 654)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"1..*"
					    pctDist    	0.429907
					    height     	56
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$136" @538
				location   	(1415, 608)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D8D3D003E"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$137" @539
					Parent_View 	@538
					location   	(103, 32)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D3E022A"
					client     	@538
					supplier   	@527
					line_style 	3
					origin_attachment 	(1415, 608)
					terminal_attachment 	(1415, 501))
				    (object RoleView "selector" @540
					Parent_View 	@538
					location   	(103, 32)
					label      	(object SegLabel @541
					    Parent_View 	@540
					    location   	(1513, 651)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+selector"
					    pctDist    	0.411215
					    height     	98
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D3E0234"
					client     	@538
					supplier   	@491
					line_style 	3
					origin_attachment 	(1415, 608)
					terminal_attachment 	(1415, 715)
					label      	(object SegLabel @542
					    Parent_View 	@540
					    location   	(1381, 650)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.392523
					    height     	34
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @543
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				location   	(1312, 160)
				label      	(object ItemLabel
				    Parent_View 	@543
				    location   	(1022, 68)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	581
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	599
				height     	209
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$180" @544
				location   	(2395, 606)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B66EEA7023E"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$181" @545
					Parent_View 	@544
					location   	(-853, 174)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EEA8038A"
					client     	@544
					supplier   	@543
					vertices   	(list Points
					    (2395, 606)
					    (2395, 65)
					    (1611, 65))
					line_style 	3
					origin_attachment 	(2395, 606)
					terminal_attachment 	(1611, 65))
				    (object RoleView "notationDeclarations" @546
					Parent_View 	@544
					location   	(-853, 174)
					label      	(object SegLabel @547
					    Parent_View 	@546
					    location   	(2089, 104)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+notationDeclarations"
					    pctDist    	-0.489776
					    height     	307
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EEA8038B"
					client     	@544
					supplier   	@492
					vertices   	(list Points
					    (2395, 606)
					    (2395, 1633)
					    (2098, 1633))
					line_style 	3
					origin_attachment 	(2395, 606)
					terminal_attachment 	(2098, 1633)
					label      	(object SegLabel @548
					    Parent_View 	@546
					    location   	(2344, 105)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	-0.487829
					    height     	52
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$176" @549
				location   	(1772, 249)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B66EEFF024F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$177" @550
					Parent_View 	@549
					location   	(-948, -327)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EF00025A"
					client     	@549
					supplier   	@543
					line_style 	3
					origin_attachment 	(1772, 249)
					terminal_attachment 	(1611, 249))
				    (object RoleView "modelGroupDefinitions" @551
					Parent_View 	@549
					location   	(-948, -327)
					label      	(object SegLabel @552
					    Parent_View 	@551
					    location   	(2076, 335)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	432
					    justify    	0
					    label      	"+modelGroupDefinitions"
					    pctDist    	0.713592
					    height     	244
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EF000264"
					client     	@549
					supplier   	@493
					vertices   	(list Points
					    (1772, 249)
					    (1832, 249)
					    (1832, 395))
					line_style 	3
					origin_attachment 	(1772, 249)
					terminal_attachment 	(1832, 395)
					label      	(object SegLabel @553
					    Parent_View 	@551
					    location   	(1781, 340)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.737864
					    height     	52
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$172" @554
				location   	(2346, 518)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B66EE920216"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$173" @555
					Parent_View 	@554
					location   	(154, 86)
					label      	(object SegLabel @556
					    Parent_View 	@555
					    location   	(1872, 1857)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	60
					    justify    	0
					    label      	""
					    pctDist    	-3.630072
					    height     	475
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EE93018B"
					client     	@554
					supplier   	@543
					vertices   	(list Points
					    (2346, 518)
					    (2346, 149)
					    (1611, 149))
					line_style 	3
					origin_attachment 	(2346, 518)
					terminal_attachment 	(1611, 149))
				    (object RoleView "attributeGroupDefinitions" @557
					Parent_View 	@554
					location   	(154, 86)
					label      	(object SegLabel @558
					    Parent_View 	@557
					    location   	(2008, 195)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	468
					    justify    	0
					    label      	"+attributeGroupDefinitions"
					    pctDist    	-0.349946
					    height     	339
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EE93018C"
					client     	@554
					supplier   	@499
					vertices   	(list Points
					    (2346, 518)
					    (2346, 1441)
					    (2166, 1441))
					line_style 	3
					origin_attachment 	(2346, 518)
					terminal_attachment 	(2166, 1441)
					label      	(object SegLabel @559
					    Parent_View 	@557
					    location   	(2299, 197)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	-0.348862
					    height     	48
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$174" @560
				location   	(203, 159)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B66EE760049"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$175" @561
					Parent_View 	@560
					location   	(-485, -273)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EE760374"
					client     	@560
					supplier   	@543
					line_style 	3
					origin_attachment 	(203, 159)
					terminal_attachment 	(1013, 159))
				    (object RoleView "typeDefinitions" @562
					Parent_View 	@560
					location   	(-485, -273)
					label      	(object SegLabel @563
					    Parent_View 	@562
					    location   	(349, 196)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	288
					    justify    	0
					    label      	"+typeDefinitions"
					    pctDist    	-1.475728
					    height     	37
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EE76037E"
					client     	@560
					supplier   	@521
					vertices   	(list Points
					    (203, 159)
					    (104, 159)
					    (104, 784)
					    (189, 784))
					line_style 	3
					origin_attachment 	(203, 159)
					terminal_attachment 	(189, 784)
					label      	(object SegLabel @564
					    Parent_View 	@562
					    location   	(155, 200)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.059701
					    height     	41
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$178" @565
				location   	(1087, 329)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BFC2A1701ED"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$179" @566
					Parent_View 	@565
					location   	(-577, -23)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFC2A1A0273"
					client     	@565
					supplier   	@543
					line_style 	3
					origin_attachment 	(1087, 329)
					terminal_attachment 	(1087, 264))
				    (object RoleView "identityConstraintDefinitions" @567
					Parent_View 	@565
					location   	(-577, -23)
					label      	(object SegLabel @568
					    Parent_View 	@567
					    location   	(1375, 338)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	528
					    justify    	0
					    label      	"+identityConstraintDefinitions"
					    pctDist    	0.130952
					    height     	288
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFC2A1A027D"
					client     	@565
					supplier   	@527
					line_style 	3
					origin_attachment 	(1087, 329)
					terminal_attachment 	(1087, 395)
					label      	(object SegLabel @569
					    Parent_View 	@567
					    location   	(1018, 336)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.107143
					    height     	70
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$170" @570
				location   	(48, 320)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B66FDFA00C3"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$171" @571
					Parent_View 	@570
					location   	(-1072, -288)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66FDFB027D"
					client     	@570
					supplier   	@543
					vertices   	(list Points
					    (49, 322)
					    (49, 68)
					    (1013, 68))
					line_style 	3
					origin_attachment 	(49, 322)
					terminal_attachment 	(1013, 68))
				    (object RoleView "attributeDeclarations" @572
					Parent_View 	@570
					location   	(-1072, -288)
					label      	(object SegLabel @573
					    Parent_View 	@572
					    location   	(338, 106)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+attributeDeclarations"
					    pctDist    	-0.198536
					    height     	289
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66FDFB027E"
					client     	@570
					supplier   	@510
					vertices   	(list Points
					    (49, 322)
					    (49, 1415)
					    (174, 1415))
					line_style 	3
					origin_attachment 	(49, 322)
					terminal_attachment 	(174, 1415)
					label      	(object SegLabel @574
					    Parent_View 	@572
					    location   	(91, 108)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	-0.196706
					    height     	42
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @575
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(416, 448)
				label      	(object ItemLabel
				    Parent_View 	@575
				    location   	(175, 412)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	483
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				width      	501
				height     	97
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$120" @576
				location   	(499, 589)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69C0590198"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$121" @577
					Parent_View 	@576
					location   	(-13, 109)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69C05D01E3"
					client     	@576
					supplier   	@575
					vertices   	(list Points
					    (499, 589)
					    (452, 589)
					    (452, 496))
					line_style 	3
					origin_attachment 	(499, 589)
					terminal_attachment 	(452, 496))
				    (object RoleView "substitutionGroupAffiliation" @578
					Parent_View 	@576
					location   	(-13, 109)
					label      	(object SegLabel @579
					    Parent_View 	@578
					    location   	(811, 585)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	504
					    justify    	0
					    label      	"+substitutionGroupAffiliation"
					    pctDist    	6.520833
					    height     	5
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69C05D01ED"
					client     	@576
					supplier   	@575
					vertices   	(list Points
					    (499, 589)
					    (547, 589)
					    (547, 496))
					line_style 	3
					origin_attachment 	(499, 589)
					terminal_attachment 	(547, 496)
					label      	(object SegLabel @580
					    Parent_View 	@578
					    location   	(499, 559)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.000000
					    height     	31
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$114" @581
				location   	(241, 613)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B68338C0058"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$115" @582
					Parent_View 	@581
					location   	(-1343, -219)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B68338C03BF"
					client     	@581
					supplier   	@575
					line_style 	3
					origin_attachment 	(241, 613)
					terminal_attachment 	(241, 496))
				    (object RoleView "typeDefinition" @583
					Parent_View 	@581
					location   	(-1343, -219)
					label      	(object SegLabel @584
					    Parent_View 	@583
					    location   	(408, 694)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+typeDefinition"
					    pctDist    	0.686441
					    height     	167
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B68338C03C0"
					client     	@581
					supplier   	@521
					line_style 	3
					origin_attachment 	(241, 613)
					terminal_attachment 	(241, 731)
					label      	(object SegLabel @585
					    Parent_View 	@583
					    location   	(202, 685)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.610169
					    height     	39
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$116" @586
				location   	(837, 460)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6833EF0160"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$117" @587
					Parent_View 	@586
					location   	(-1819, -68)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6833F00298"
					client     	@586
					supplier   	@575
					line_style 	3
					origin_attachment 	(837, 460)
					terminal_attachment 	(666, 460))
				    (object RoleView "identityConstraintDefinitions" @588
					Parent_View 	@586
					location   	(-1819, -68)
					label      	(object SegLabel @589
					    Parent_View 	@588
					    location   	(880, 528)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	528
					    justify    	0
					    label      	"+identityConstraintDefinitions"
					    pctDist    	0.251462
					    height     	68
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6833F00299"
					client     	@586
					supplier   	@527
					line_style 	3
					origin_attachment 	(837, 460)
					terminal_attachment 	(1008, 460)
					label      	(object SegLabel @590
					    Parent_View 	@588
					    location   	(859, 407)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.130435
					    height     	54
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$168" @591
				location   	(541, 246)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B66EE8D01BF"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$169" @592
					Parent_View 	@591
					location   	(-1123, -186)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EE8E0198"
					client     	@591
					supplier   	@543
					line_style 	3
					origin_attachment 	(541, 246)
					terminal_attachment 	(1013, 246))
				    (object RoleView "elementDeclarations" @593
					Parent_View 	@591
					location   	(-1123, -186)
					label      	(object SegLabel @594
					    Parent_View 	@593
					    location   	(443, 335)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+elementDeclarations"
					    pctDist    	0.209302
					    height     	89
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B66EE8E0199"
					client     	@591
					supplier   	@575
					vertices   	(list Points
					    (541, 246)
					    (224, 246)
					    (224, 400))
					line_style 	3
					origin_attachment 	(541, 246)
					terminal_attachment 	(224, 400)
					label      	(object SegLabel @595
					    Parent_View 	@593
					    location   	(186, 335)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.864693
					    height     	39
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$122" @596
				location   	(353, 621)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C42DBDD0297"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$123" @597
					Parent_View 	@596
					location   	(-63, 173)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C42DBE0011E"
					client     	@596
					supplier   	@575
					vertices   	(list Points
					    (353, 621)
					    (306, 621)
					    (306, 496))
					line_style 	3
					origin_attachment 	(353, 621)
					terminal_attachment 	(306, 496))
				    (object RoleView "substitutionGroup" @598
					Parent_View 	@596
					location   	(-63, 173)
					label      	(object SegLabel @599
					    Parent_View 	@598
					    location   	(579, 636)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	348
					    justify    	0
					    label      	"+substitutionGroup"
					    pctDist    	4.808511
					    height     	15
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C42DBE00128"
					client     	@596
					supplier   	@575
					vertices   	(list Points
					    (353, 621)
					    (400, 621)
					    (400, 496))
					line_style 	3
					origin_attachment 	(353, 621)
					terminal_attachment 	(400, 496)
					label      	(object SegLabel @600
					    Parent_View 	@598
					    location   	(350, 583)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	-0.069767
					    height     	39
					    orientation 	0))))))
		    (object ClassDiagram "3. Component Attributes  (Part 1 : Structures)"
			quid       	"3B69E78602C5"
			title      	"3. Component Attributes  (Part 1 : Structures)"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDNamedComponent" @601
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(304, 128)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@601
				    location   	(46, 47)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	516
				    justify    	0
				    label      	"XSDNamedComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846D303A4"
				compartment 	(object Compartment
				    Parent_View 	@601
				    location   	(46, 107)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	482
				    compartmentItems 	(list Compartment
					"+ name : String"
					"+ targetNamespace : String"))
				width      	534
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDParticle" @602
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(288, 1648)
				label      	(object ItemLabel
				    Parent_View 	@602
				    location   	(41, 1567)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	494
				    justify    	0
				    label      	"XSDParticle")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BBD01F7"
				width      	512
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @603
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2368, 1680)
				label      	(object ItemLabel
				    Parent_View 	@603
				    location   	(1781, 1524)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1174
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				compartment 	(object Compartment
				    Parent_View 	@603
				    location   	(1781, 1584)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	5
				    max_width  	1139
				    compartmentItems 	(list Compartment
					"+ derivationMethod : XSDDerivationMethod = restriction"
					"<<0..*>> + final : XSDComplexFinal"
					"+ abstract : boolean"
					"+ contentTypeCategory : XSDContentTypeCategory"
					"<<0..*>> + prohibitedSubstitutions : XSDProhibitedSubstitutions"))
				width      	1192
				height     	336
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @604
				location   	(463, 362)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@601
				vertices   	(list Points
				    (463, 362)
				    (463, 221)))
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @605
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1408, 1600)
				label      	(object ItemLabel
				    Parent_View 	@605
				    location   	(1094, 1519)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	628
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				compartment 	(object Compartment
				    Parent_View 	@605
				    location   	(1094, 1579)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	592
				    compartmentItems 	(list Compartment
					"+ variety : XSDVariety"
					"<<0..*>> + final : XSDSimpleFinal"))
				width      	646
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeUse" @606
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(912, 144)
				label      	(object ItemLabel
				    Parent_View 	@606
				    location   	(647, 38)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	530
				    justify    	0
				    label      	"XSDAttributeUse")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B68354601A8"
				compartment 	(object Compartment
				    Parent_View 	@606
				    location   	(647, 98)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	3
				    max_width  	502
				    compartmentItems 	(list Compartment
					"+ required : boolean"
					"+ value : Value"
					"+ constraint : XSDConstraint"))
				width      	548
				height     	236
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDWildcard" @607
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(688, 1936)
				label      	(object ItemLabel
				    Parent_View 	@607
				    location   	(45, 1830)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1286
				    justify    	0
				    label      	"XSDWildcard")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6838370031"
				compartment 	(object Compartment
				    Parent_View 	@607
				    location   	(45, 1890)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	3
				    max_width  	1260
				    compartmentItems 	(list Compartment
					"+ namespaceConstraintCategory : XSDNamespaceConstraintCategory"
					"<<0..*>> + namespaceConstraint : String"
					"+ processContents : XSDProcessContents"))
				width      	1304
				height     	236
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroup" @608
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(336, 1440)
				label      	(object ItemLabel
				    Parent_View 	@608
				    location   	(47, 1384)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	578
				    justify    	0
				    label      	"XSDModelGroup")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6834E00291"
				width      	596
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDFeature" @609
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(304, 512)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@609
				    location   	(36, 431)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	536
				    justify    	0
				    label      	"XSDFeature")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B537026C"
				compartment 	(object Compartment
				    Parent_View 	@609
				    location   	(36, 491)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	506
				    compartmentItems 	(list Compartment
					"+ value : Value"
					"+ constraint : XSDConstraint"))
				width      	554
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @610
				location   	(294, 697)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@609
				vertices   	(list Points
				    (294, 697)
				    (294, 605)))
			    (object ClassView "Class" "Logical View::xsd::XSDXPathDefinition" @611
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2256, 128)
				label      	(object ItemLabel
				    Parent_View 	@611
				    location   	(1995, 47)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	522
				    justify    	0
				    label      	"XSDXPathDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6D83BB0355"
				width      	540
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefinableComponent" @612
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2688, 512)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@612
				    location   	(2418, 460)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	540
				    justify    	0
				    label      	"XSDRedefinableComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B7FCA8B020B"
				width      	558
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @613
				location   	(2684, 962)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@612
				vertices   	(list Points
				    (2684, 962)
				    (2684, 576)))
			    (object ClassView "Class" "Logical View::xsd::XSDCompositor" @614
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(208, 1200)
				label      	(object ItemLabel
				    Parent_View 	@614
				    location   	(45, 1116)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"XSDCompositor")
				stereotype 	(object ItemLabel
				    Parent_View 	@614
				    location   	(45, 1066)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B869B620037"
				width      	344
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDConstraint" @615
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(800, 528)
				label      	(object ItemLabel
				    Parent_View 	@615
				    location   	(638, 469)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDConstraint")
				stereotype 	(object ItemLabel
				    Parent_View 	@615
				    location   	(638, 419)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B869E2601AE"
				width      	342
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDDerivationMethod" @616
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2192, 2272)
				label      	(object ItemLabel
				    Parent_View 	@616
				    location   	(1980, 2213)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	424
				    justify    	0
				    label      	"XSDDerivationMethod")
				stereotype 	(object ItemLabel
				    Parent_View 	@616
				    location   	(1980, 2163)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	424
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B86A0B000CE"
				width      	442
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDIdentityConstraintCategory" @617
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1584, 176)
				label      	(object ItemLabel
				    Parent_View 	@617
				    location   	(1281, 88)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	607
				    justify    	0
				    label      	"XSDIdentityConstraintCategory")
				stereotype 	(object ItemLabel
				    Parent_View 	@617
				    location   	(1281, 38)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	607
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B86A1E00272"
				width      	625
				height     	300
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDContentTypeCategory" @618
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2704, 2224)
				label      	(object ItemLabel
				    Parent_View 	@618
				    location   	(2456, 2115)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	496
				    justify    	0
				    label      	"XSDContentTypeCategory")
				stereotype 	(object ItemLabel
				    Parent_View 	@618
				    location   	(2456, 2065)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	496
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B86A79F03A2"
				width      	514
				height     	342
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDVariety" @619
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(880, 1600)
				label      	(object ItemLabel
				    Parent_View 	@619
				    location   	(708, 1516)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	344
				    justify    	0
				    label      	"XSDVariety")
				stereotype 	(object ItemLabel
				    Parent_View 	@619
				    location   	(708, 1466)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	344
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B8FF7730249"
				width      	362
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDProcessContents" @620
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(976, 2240)
				label      	(object ItemLabel
				    Parent_View 	@620
				    location   	(766, 2156)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	420
				    justify    	0
				    label      	"XSDProcessContents")
				stereotype 	(object ItemLabel
				    Parent_View 	@620
				    location   	(766, 2106)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	420
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B8FF8C70284"
				width      	438
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDXPathVariety" @621
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2768, 160)
				label      	(object ItemLabel
				    Parent_View 	@621
				    location   	(2587, 97)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	363
				    justify    	0
				    label      	"XSDXPathVariety")
				stereotype 	(object ItemLabel
				    Parent_View 	@621
				    location   	(2587, 47)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	363
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B8FFB89033A"
				width      	381
				height     	250
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleFinal" @622
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1552, 1872)
				label      	(object ItemLabel
				    Parent_View 	@622
				    location   	(1389, 1788)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"XSDSimpleFinal")
				stereotype 	(object ItemLabel
				    Parent_View 	@622
				    location   	(1389, 1738)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C25D0295"
				compartment 	(object Compartment
				    Parent_View 	@622
				    location   	(1389, 1848)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	3
				    max_width  	199
				    compartmentItems 	(list Compartment
					"+ list"
					"+ restriction"
					"+ union"))
				width      	344
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexFinal" @623
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1968, 2000)
				label      	(object ItemLabel
				    Parent_View 	@623
				    location   	(1786, 1941)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	364
				    justify    	0
				    label      	"XSDComplexFinal")
				stereotype 	(object ItemLabel
				    Parent_View 	@623
				    location   	(1786, 1891)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	364
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C2CA01CB"
				compartment 	(object Compartment
				    Parent_View 	@623
				    location   	(1786, 2001)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	202
				    compartmentItems 	(list Compartment
					"+ extension"
					"+ restriction"))
				width      	382
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSubstitutionGroupExclusions" @624
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(800, 1184)
				label      	(object ItemLabel
				    Parent_View 	@624
				    location   	(485, 1125)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	630
				    justify    	0
				    label      	"XSDSubstitutionGroupExclusions")
				stereotype 	(object ItemLabel
				    Parent_View 	@624
				    location   	(485, 1075)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	630
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C59100AE"
				width      	648
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDDisallowedSubstitutions" @625
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1440, 1200)
				label      	(object ItemLabel
				    Parent_View 	@625
				    location   	(1171, 1116)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	538
				    justify    	0
				    label      	"XSDDisallowedSubstitutions")
				stereotype 	(object ItemLabel
				    Parent_View 	@625
				    location   	(1171, 1066)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	538
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C5A403DF"
				compartment 	(object Compartment
				    Parent_View 	@625
				    location   	(1171, 1176)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	3
				    max_width  	236
				    compartmentItems 	(list Compartment
					"+ substitution"
					"+ extension"
					"+ restriction"))
				width      	556
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDProhibitedSubstitutions" @626
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1664, 2272)
				label      	(object ItemLabel
				    Parent_View 	@626
				    location   	(1398, 2213)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	532
				    justify    	0
				    label      	"XSDProhibitedSubstitutions")
				stereotype 	(object ItemLabel
				    Parent_View 	@626
				    location   	(1398, 2163)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	532
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C5BE0272"
				compartment 	(object Compartment
				    Parent_View 	@626
				    location   	(1398, 2273)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	202
				    compartmentItems 	(list Compartment
					"+ extension"
					"+ restriction"))
				width      	550
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDNamespaceConstraintCategory" @627
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(384, 2240)
				label      	(object ItemLabel
				    Parent_View 	@627
				    location   	(45, 2154)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	678
				    justify    	0
				    label      	"XSDNamespaceConstraintCategory")
				stereotype 	(object ItemLabel
				    Parent_View 	@627
				    location   	(45, 2104)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	678
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C5EA0023"
				width      	696
				height     	296
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @628
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1264, 880)
				label      	(object ItemLabel
				    Parent_View 	@628
				    location   	(571, 749)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1386
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				compartment 	(object Compartment
				    Parent_View 	@628
				    location   	(571, 809)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	4
				    max_width  	1357
				    compartmentItems 	(list Compartment
					"+ nillable : boolean"
					"<<0..*>> + disallowedSubstitutions : XSDDisallowedSubstitutions"
					"<<0..*>> + substitutionGroupExclusions : XSDSubstitutionGroupExclusions"
					"+ abstract : boolean"))
				width      	1404
				height     	286
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @629
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69EDEE01BF"
				client     	@628
				supplier   	@609
				line_style 	3
				origin_attachment 	(681, 737)
				terminal_attachment 	(681, 697)
				drawSupplier 	@610)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeDeclaration" @630
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(272, 864)
				label      	(object ItemLabel
				    Parent_View 	@630
				    location   	(35, 812)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	474
				    justify    	0
				    label      	"XSDAttributeDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED2E0192"
				width      	492
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupDefinition" @631
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2688, 1152)
				label      	(object ItemLabel
				    Parent_View 	@631
				    location   	(2420, 1100)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	536
				    justify    	0
				    label      	"XSDAttributeGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED840290"
				width      	554
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @632
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAC800D2"
				client     	@631
				supplier   	@612
				line_style 	3
				origin_attachment 	(2862, 1088)
				terminal_attachment 	(2862, 962)
				drawSupplier 	@613)
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @633
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2352, 1312)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@633
				    location   	(2168, 1261)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	368
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B66ECD302A9"
				width      	386
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @634
				location   	(2375, 1465)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@633
				vertices   	(list Points
				    (2375, 1465)
				    (2375, 1375)))
			    (object InheritView "" @635
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAB1004D"
				client     	@633
				supplier   	@612
				line_style 	3
				origin_attachment 	(2368, 1249)
				terminal_attachment 	(2368, 962)
				drawSupplier 	@613)
			    (object InheritView "" @636
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0D01901F1"
				client     	@603
				supplier   	@633
				line_style 	3
				origin_attachment 	(2818, 1512)
				terminal_attachment 	(2818, 1465)
				drawSupplier 	@634)
			    (object InheritView "" @637
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A1302A2"
				client     	@605
				supplier   	@633
				line_style 	3
				origin_attachment 	(1406, 1507)
				terminal_attachment 	(1406, 1465)
				drawSupplier 	@634)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroupDefinition" @638
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2064, 1152)
				label      	(object ItemLabel
				    Parent_View 	@638
				    location   	(1818, 1101)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	492
				    justify    	0
				    label      	"XSDModelGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED9A0205"
				width      	510
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @639
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAC40090"
				client     	@638
				supplier   	@612
				line_style 	3
				origin_attachment 	(2115, 1089)
				terminal_attachment 	(2115, 962)
				drawSupplier 	@613)
			    (object ClassView "Class" "Logical View::xsd::XSDIdentityConstraintDefinition" @640
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1600, 528)
				label      	(object ItemLabel
				    Parent_View 	@640
				    location   	(1034, 468)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	1132
				    justify    	0
				    label      	"XSDIdentityConstraintDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B2603A2"
				width      	1150
				height     	144
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @641
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684AA30242"
				client     	@640
				supplier   	@601
				line_style 	3
				origin_attachment 	(1568, 456)
				terminal_attachment 	(1568, 362)
				drawSupplier 	@604)
			    (object ClassView "Class" "Logical View::xsd::XSDNotationDeclaration" @642
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2320, 784)
				label      	(object ItemLabel
				    Parent_View 	@642
				    location   	(2078, 703)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	484
				    justify    	0
				    label      	"XSDNotationDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDAA021C"
				width      	502
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @643
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(176, 320)
				label      	(object ItemLabel
				    Parent_View 	@643
				    location   	(43, 268)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	266
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	284
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @644
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B68494302F1"
				client     	@642
				supplier   	@601
				line_style 	3
				origin_attachment 	(2290, 691)
				terminal_attachment 	(2290, 362)
				drawSupplier 	@604)
			    (object InheritView "" @645
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69B7DC0193"
				client     	@630
				supplier   	@609
				line_style 	3
				origin_attachment 	(141, 800)
				terminal_attachment 	(141, 697)
				drawSupplier 	@610)
			    (object InheritView "" @646
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A2C0307"
				client     	@609
				supplier   	@601
				line_style 	3
				origin_attachment 	(372, 419)
				terminal_attachment 	(372, 362)
				drawSupplier 	@604)
			    (object InheritView "" @647
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A26036D"
				client     	@612
				supplier   	@601
				line_style 	3
				origin_attachment 	(2687, 448)
				terminal_attachment 	(2687, 362)
				drawSupplier 	@604)))
		    (object ClassDiagram "4. Component Hierarchy, Relations and Attributes (Part 2: Datatypes)"
			quid       	"3B6C3265005F"
			title      	"4. Component Hierarchy, Relations and Attributes (Part 2: Datatypes)"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDFixedFacet" @648
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(192, 896)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@648
				    location   	(32, 840)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	320
				    justify    	0
				    label      	"XSDFixedFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C699E00C1"
				width      	338
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDRepeatableFacet" @649
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(720, 896)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@649
				    location   	(504, 845)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	432
				    justify    	0
				    label      	"XSDRepeatableFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C6AA6031A"
				width      	450
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDEnumerationFacet" @650
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(496, 1168)
				label      	(object ItemLabel
				    Parent_View 	@650
				    location   	(266, 1112)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	460
				    justify    	0
				    label      	"XSDEnumerationFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C6ACE0141"
				width      	478
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDPatternFacet" @651
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1008, 1168)
				label      	(object ItemLabel
				    Parent_View 	@651
				    location   	(777, 1112)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	462
				    justify    	0
				    label      	"XSDPatternFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C6ADB026C"
				width      	480
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @652
				location   	(718, 1049)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@649
				vertices   	(list Points
				    (718, 1049)
				    (718, 959)))
			    (object ClassView "Class" "Logical View::xsd::XSDOrderedFacet" @653
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2000, 928)
				label      	(object ItemLabel
				    Parent_View 	@653
				    location   	(1799, 872)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	402
				    justify    	0
				    label      	"XSDOrderedFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C74DD0248"
				width      	420
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDBoundedFacet" @654
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1568, 928)
				label      	(object ItemLabel
				    Parent_View 	@654
				    location   	(1383, 872)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	370
				    justify    	0
				    label      	"XSDBoundedFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C751D0344"
				width      	388
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDCardinalityFacet" @655
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2032, 1104)
				label      	(object ItemLabel
				    Parent_View 	@655
				    location   	(1807, 1048)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	450
				    justify    	0
				    label      	"XSDCardinalityFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C755D03D2"
				width      	468
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDNumericFacet" @656
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1504, 1104)
				label      	(object ItemLabel
				    Parent_View 	@656
				    location   	(1319, 1049)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	370
				    justify    	0
				    label      	"XSDNumericFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C75950206"
				width      	388
				height     	134
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDLengthFacet" @657
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(656, 1376)
				label      	(object ItemLabel
				    Parent_View 	@657
				    location   	(491, 1320)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	330
				    justify    	0
				    label      	"XSDLengthFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C776200E7"
				width      	348
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMinLengthFacet" @658
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(608, 1552)
				label      	(object ItemLabel
				    Parent_View 	@658
				    location   	(405, 1497)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	406
				    justify    	0
				    label      	"XSDMinLengthFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C778C0065"
				width      	424
				height     	134
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @659
				location   	(144, 1262)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@648
				vertices   	(list Points
				    (144, 1262)
				    (144, 964)))
			    (object ClassView "Class" "Logical View::xsd::XSDMaxLengthFacet" @660
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1216, 1552)
				label      	(object ItemLabel
				    Parent_View 	@660
				    location   	(1007, 1497)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	418
				    justify    	0
				    label      	"XSDMaxLengthFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C77C70146"
				width      	436
				height     	134
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDWhiteSpaceFacet" @661
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1120, 1376)
				label      	(object ItemLabel
				    Parent_View 	@661
				    location   	(880, 1320)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	480
				    justify    	0
				    label      	"XSDWhiteSpaceFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C784601B7"
				width      	498
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMaxInclusiveFacet" @662
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1312, 1728)
				label      	(object ItemLabel
				    Parent_View 	@662
				    location   	(1090, 1676)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	444
				    justify    	0
				    label      	"XSDMaxInclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C787D00DA"
				width      	462
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMaxExclusiveFacet" @663
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1424, 1904)
				label      	(object ItemLabel
				    Parent_View 	@663
				    location   	(1193, 1852)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	462
				    justify    	0
				    label      	"XSDMaxExclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C789600C2"
				width      	480
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMinInclusiveFacet" @664
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(496, 1728)
				label      	(object ItemLabel
				    Parent_View 	@664
				    location   	(282, 1676)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	428
				    justify    	0
				    label      	"XSDMinInclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C788702C9"
				width      	446
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMinExclusiveFacet" @665
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(352, 1904)
				label      	(object ItemLabel
				    Parent_View 	@665
				    location   	(124, 1852)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	456
				    justify    	0
				    label      	"XSDMinExclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C792D000A"
				width      	474
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDTotalDigitsFacet" @666
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(256, 2112)
				label      	(object ItemLabel
				    Parent_View 	@666
				    location   	(52, 2056)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	408
				    justify    	0
				    label      	"XSDTotalDigitsFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C79A0020E"
				width      	426
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDFractionDigitsFacet" @667
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1552, 2112)
				label      	(object ItemLabel
				    Parent_View 	@667
				    location   	(1318, 2056)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	468
				    justify    	0
				    label      	"XSDFractionDigitsFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C79BE02EE"
				width      	486
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @668
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6C9D03C7"
				client     	@650
				supplier   	@649
				line_style 	3
				origin_attachment 	(394, 1100)
				terminal_attachment 	(394, 1049)
				drawSupplier 	@652)
			    (object InheritView "" @669
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C78620045"
				client     	@661
				supplier   	@648
				line_style 	3
				origin_attachment 	(1119, 1308)
				terminal_attachment 	(1119, 1262)
				drawSupplier 	@659)
			    (object ClassView "Class" "Logical View::xsd::XSDComponent" @670
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(336, 160)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@670
				    location   	(174, 117)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846E90029"
				width      	342
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @671
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6CA5038D"
				client     	@651
				supplier   	@649
				line_style 	3
				origin_attachment 	(1044, 1100)
				terminal_attachment 	(1044, 1049)
				drawSupplier 	@652)
			    (object InheritView "" @672
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C778002DF"
				client     	@657
				supplier   	@648
				line_style 	3
				origin_attachment 	(663, 1308)
				terminal_attachment 	(663, 1262)
				drawSupplier 	@659)
			    (object ClassView "Class" "Logical View::xsd::XSDOrdered" @673
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2048, 1408)
				label      	(object ItemLabel
				    Parent_View 	@673
				    location   	(1835, 1324)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	426
				    justify    	0
				    label      	"XSDOrdered")
				stereotype 	(object ItemLabel
				    Parent_View 	@673
				    location   	(1835, 1274)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	426
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3BC7715202E4"
				width      	444
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDCardinality" @674
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2048, 1728)
				label      	(object ItemLabel
				    Parent_View 	@674
				    location   	(1835, 1669)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	426
				    justify    	0
				    label      	"XSDCardinality")
				stereotype 	(object ItemLabel
				    Parent_View 	@674
				    location   	(1835, 1619)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	426
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3BC7715D009B"
				width      	444
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDWhiteSpace" @675
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2064, 2032)
				label      	(object ItemLabel
				    Parent_View 	@675
				    location   	(1861, 1951)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	406
				    justify    	0
				    label      	"XSDWhiteSpace")
				stereotype 	(object ItemLabel
				    Parent_View 	@675
				    location   	(1861, 1901)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	406
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3BEED0F60342"
				width      	424
				height     	287
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::Value" @676
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(880, 2096)
				label      	(object ItemLabel
				    Parent_View 	@676
				    location   	(571, 2062)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	618
				    justify    	0
				    label      	"Value")
				stereotype 	(object ItemLabel
				    Parent_View 	@676
				    location   	(571, 2012)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	618
				    justify    	0
				    label      	"<<datatype>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	14671839
				quidu      	"3C040B5B031F"
				width      	636
				height     	192
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @677
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7B610337"
				client     	@666
				supplier   	@648
				line_style 	3
				origin_attachment 	(75, 2044)
				terminal_attachment 	(75, 1262)
				drawSupplier 	@659)
			    (object ClassView "Class" "Logical View::xsd::XSDMinFacet" @678
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(256, 1376)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@678
				    location   	(113, 1320)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	286
				    justify    	0
				    label      	"XSDMinFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3C0A1CDE037C"
				compartment 	(object Compartment
				    Parent_View 	@678
				    location   	(113, 1380)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	1
				    max_width  	254
				    compartmentItems 	(list Compartment
					"+ value : Value"))
				width      	304
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMaxFacet" @679
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1584, 1376)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@679
				    location   	(1440, 1320)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	288
				    justify    	0
				    label      	"XSDMaxFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3C0A1CEB010E"
				compartment 	(object Compartment
				    Parent_View 	@679
				    location   	(1440, 1380)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	1
				    max_width  	258
				    compartmentItems 	(list Compartment
					"+ value : Value"))
				width      	306
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @680
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C0A1D240098"
				client     	@678
				supplier   	@648
				line_style 	3
				origin_attachment 	(235, 1308)
				terminal_attachment 	(235, 1262)
				drawSupplier 	@659)
			    (object InheritView "" @681
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C0A1D3103AD"
				client     	@679
				supplier   	@648
				line_style 	3
				origin_attachment 	(1581, 1308)
				terminal_attachment 	(1581, 1262)
				drawSupplier 	@659)
			    (object InheritView "" @682
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7B520353"
				client     	@664
				supplier   	@678
				line_style 	3
				origin_attachment 	(285, 1664)
				terminal_attachment 	(285, 1444))
			    (object InheritView "" @683
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7B8303B8"
				client     	@662
				supplier   	@679
				line_style 	3
				origin_attachment 	(1500, 1664)
				terminal_attachment 	(1500, 1444))
			    (object InheritView "" @684
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7B8E0309"
				client     	@663
				supplier   	@679
				line_style 	3
				origin_attachment 	(1622, 1840)
				terminal_attachment 	(1622, 1444))
			    (object InheritView "" @685
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C77C400C0"
				client     	@658
				supplier   	@648
				line_style 	3
				origin_attachment 	(447, 1485)
				terminal_attachment 	(447, 1262)
				drawSupplier 	@659)
			    (object InheritView "" @686
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7B7D00FC"
				client     	@660
				supplier   	@648
				line_style 	3
				origin_attachment 	(1397, 1485)
				terminal_attachment 	(1397, 1262)
				drawSupplier 	@659)
			    (object InheritView "" @687
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7B990016"
				client     	@667
				supplier   	@648
				line_style 	3
				origin_attachment 	(1775, 2044)
				terminal_attachment 	(1775, 1262)
				drawSupplier 	@659)
			    (object ClassView "Class" "Logical View::xsd::XSDFacet" @688
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(368, 368)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@688
				    location   	(174, 318)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	388
				    justify    	0
				    label      	"XSDFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C359403D2"
				width      	406
				height     	125
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @689
				location   	(366, 522)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@688
				vertices   	(list Points
				    (366, 522)
				    (366, 430)))
			    (object ClassView "Class" "Logical View::xsd::XSDConstrainingFacet" @690
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(256, 624)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@690
				    location   	(34, 573)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	444
				    justify    	0
				    label      	"XSDConstrainingFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C6B340093"
				width      	462
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @691
				location   	(272, 781)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@690
				vertices   	(list Points
				    (272, 781)
				    (272, 687)))
			    (object InheritView "" @692
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6C8F002E"
				client     	@649
				supplier   	@690
				line_style 	3
				origin_attachment 	(594, 833)
				terminal_attachment 	(594, 781)
				drawSupplier 	@691)
			    (object ClassView "Class" "Logical View::xsd::XSDFundamentalFacet" @693
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(752, 624)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@693
				    location   	(526, 573)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	452
				    justify    	0
				    label      	"XSDFundamentalFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C69E801D6"
				width      	470
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @694
				location   	(768, 789)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@693
				vertices   	(list Points
				    (768, 789)
				    (768, 687)))
			    (object InheritView "" @695
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7659012C"
				client     	@653
				supplier   	@693
				line_style 	3
				origin_attachment 	(2050, 860)
				terminal_attachment 	(2050, 789)
				drawSupplier 	@694)
			    (object InheritView "" @696
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C763C0224"
				client     	@654
				supplier   	@693
				line_style 	3
				origin_attachment 	(1525, 860)
				terminal_attachment 	(1525, 789)
				drawSupplier 	@694)
			    (object InheritView "" @697
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C764F0131"
				client     	@655
				supplier   	@693
				line_style 	3
				origin_attachment 	(2237, 1036)
				terminal_attachment 	(2237, 789)
				drawSupplier 	@694)
			    (object InheritView "" @698
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C76420074"
				client     	@656
				supplier   	@693
				line_style 	3
				origin_attachment 	(1328, 1037)
				terminal_attachment 	(1328, 789)
				drawSupplier 	@694)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @699
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1456, 160)
				label      	(object ItemLabel
				    Parent_View 	@699
				    location   	(1137, 47)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	638
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				compartment 	(object Compartment
				    Parent_View 	@699
				    location   	(1137, 107)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	598
				    compartmentItems 	(list Compartment
					"+ variety : XSDVariety"
					"<<0..*>> + final : XSDSimpleFinal"))
				width      	656
				height     	250
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$126" @700
				location   	(775, 178)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D597102EA"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$127" @701
					Parent_View 	@700
					location   	(-1209, -46)
					label      	(object SegLabel @702
					    Parent_View 	@701
					    location   	(509, 235)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D59750119"
					client     	@700
					supplier   	@688
					vertices   	(list Points
					    (775, 178)
					    (550, 178)
					    (550, 306))
					line_style 	3
					origin_attachment 	(775, 178)
					terminal_attachment 	(550, 306))
				    (object RoleView "simpleTypeDefinition" @703
					Parent_View 	@700
					location   	(-1209, -46)
					label      	(object SegLabel @704
					    Parent_View 	@703
					    location   	(875, 136)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+simpleTypeDefinition"
					    pctDist    	0.283133
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D59750105"
					client     	@700
					supplier   	@699
					line_style 	3
					origin_attachment 	(775, 178)
					terminal_attachment 	(1128, 178)
					label      	(object SegLabel @705
					    Parent_View 	@703
					    location   	(1061, 215)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.812500
					    height     	37
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$188" @706
				location   	(369, 72)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BC8AE0203A8"
				roleview_list 	(list RoleViews
				    (object RoleView "facets" @707
					Parent_View 	@706
					location   	(-1615, -152)
					label      	(object SegLabel @708
					    Parent_View 	@707
					    location   	(187, 496)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	132
					    justify    	0
					    label      	"+facets"
					    pctDist    	0.913863
					    height     	87
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BC8AE060065"
					client     	@706
					supplier   	@690
					vertices   	(list Points
					    (369, 72)
					    (100, 72)
					    (100, 561))
					line_style 	3
					origin_attachment 	(369, 72)
					terminal_attachment 	(100, 561)
					label      	(object SegLabel @709
					    Parent_View 	@707
					    location   	(60, 498)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.917900
					    height     	41
					    orientation 	1))
				    (object RoleView "$UNNAMED$189" @710
					Parent_View 	@706
					location   	(-1615, -152)
					label      	(object SegLabel @711
					    Parent_View 	@710
					    location   	(976, 31)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BC8AE060051"
					client     	@706
					supplier   	@699
					line_style 	3
					origin_attachment 	(369, 72)
					terminal_attachment 	(1128, 72))))
			    (object AssociationViewNew "$UNNAMED$230" @712
				location   	(1538, 508)
				label      	(object SegLabel @713
				    Parent_View 	@712
				    location   	(1538, 449)
				    font       	(object Font
					italics    	TRUE)
				    hidden     	TRUE
				    anchor     	1
				    anchor_loc 	1
				    nlines     	1
				    max_width  	60
				    justify    	0
				    label      	""
				    pctDist    	0.500000
				    height     	60
				    orientation 	0)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C276DA000DE"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$231" @714
					Parent_View 	@712
					location   	(-446, 284)
					label      	(object SegLabel @715
					    Parent_View 	@714
					    location   	(1446, 340)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C276DA000DF"
					client     	@712
					supplier   	@699
					vertices   	(list Points
					    (1538, 508)
					    (1487, 508)
					    (1487, 285))
					line_style 	3
					origin_attachment 	(1538, 508)
					terminal_attachment 	(1487, 285))
				    (object RoleView "itemTypeDefinition" @716
					Parent_View 	@712
					location   	(-446, 284)
					label      	(object SegLabel @717
					    Parent_View 	@716
					    location   	(1423, 577)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	360
					    justify    	0
					    label      	"+itemTypeDefinition"
					    pctDist    	-2.211539
					    height     	69
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C276DA000E0"
					client     	@712
					supplier   	@699
					vertices   	(list Points
					    (1538, 508)
					    (1590, 508)
					    (1590, 285))
					line_style 	3
					origin_attachment 	(1538, 508)
					terminal_attachment 	(1590, 285)
					label      	(object SegLabel @718
					    Parent_View 	@716
					    location   	(1539, 468)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.003984
					    height     	41
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$190" @719
				location   	(1729, 574)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C34B70208"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$191" @720
					Parent_View 	@719
					location   	(-255, 350)
					label      	(object SegLabel @721
					    Parent_View 	@720
					    location   	(1637, 353)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6C34BE0258"
					client     	@719
					supplier   	@699
					vertices   	(list Points
					    (1729, 574)
					    (1678, 574)
					    (1678, 285))
					line_style 	3
					origin_attachment 	(1729, 574)
					terminal_attachment 	(1678, 285))
				    (object RoleView "memberTypeDefinitions" @722
					Parent_View 	@719
					location   	(-255, 350)
					label      	(object SegLabel @723
					    Parent_View 	@722
					    location   	(1559, 654)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	444
					    justify    	0
					    label      	"+memberTypeDefinitions"
					    pctDist    	-3.269231
					    height     	80
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6C34BE0259"
					client     	@719
					supplier   	@699
					vertices   	(list Points
					    (1729, 574)
					    (1781, 574)
					    (1781, 285))
					line_style 	3
					origin_attachment 	(1729, 574)
					terminal_attachment 	(1781, 285)
					label      	(object SegLabel @724
					    Parent_View 	@722
					    location   	(1730, 520)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.312121
					    height     	52
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$192" @725
				location   	(748, 269)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C363201DB"
				roleview_list 	(list RoleViews
				    (object RoleView "fundamentalFacets" @726
					Parent_View 	@725
					location   	(-1236, 45)
					label      	(object SegLabel @727
					    Parent_View 	@726
					    location   	(873, 312)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+fundamentalFacets"
					    pctDist    	-1.409091
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6C36350063"
					client     	@725
					supplier   	@693
					vertices   	(list Points
					    (748, 269)
					    (659, 269)
					    (659, 561))
					line_style 	3
					origin_attachment 	(748, 269)
					terminal_attachment 	(659, 561)
					label      	(object SegLabel @728
					    Parent_View 	@726
					    location   	(728, 385)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..*"
					    pctDist    	0.538028
					    height     	69
					    orientation 	0))
				    (object RoleView "$UNNAMED$193" @729
					Parent_View 	@725
					location   	(-1236, 45)
					label      	(object SegLabel @730
					    Parent_View 	@729
					    location   	(1052, 228)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6C36350059"
					client     	@725
					supplier   	@699
					line_style 	3
					origin_attachment 	(748, 269)
					terminal_attachment 	(1128, 269))))
			    (object AssociationViewNew "$UNNAMED$194" @731
				location   	(1175, 396)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D35AB0273"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$195" @732
					Parent_View 	@731
					location   	(-809, 172)
					label      	(object SegLabel @733
					    Parent_View 	@732
					    location   	(1094, 316)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D35B20291"
					client     	@731
					supplier   	@699
					vertices   	(list Points
					    (1175, 396)
					    (1135, 396)
					    (1135, 285))
					line_style 	3
					origin_attachment 	(1175, 396)
					terminal_attachment 	(1135, 285))
				    (object RoleView "baseTypeDefinition" @734
					Parent_View 	@731
					location   	(-809, 172)
					label      	(object SegLabel @735
					    Parent_View 	@734
					    location   	(1074, 443)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+baseTypeDefinition"
					    pctDist    	-2.533333
					    height     	47
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D35B202A5"
					client     	@731
					supplier   	@699
					vertices   	(list Points
					    (1175, 396)
					    (1215, 396)
					    (1215, 285))
					line_style 	3
					origin_attachment 	(1175, 396)
					terminal_attachment 	(1215, 285)
					label      	(object SegLabel @736
					    Parent_View 	@734
					    location   	(1172, 359)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.096154
					    height     	38
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$196" @737
				location   	(1360, 446)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D5572016C"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$197" @738
					Parent_View 	@737
					location   	(-624, 222)
					label      	(object SegLabel @739
					    Parent_View 	@738
					    location   	(1268, 327)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D5575022F"
					client     	@737
					supplier   	@699
					vertices   	(list Points
					    (1360, 446)
					    (1309, 446)
					    (1309, 285))
					line_style 	3
					origin_attachment 	(1360, 446)
					terminal_attachment 	(1309, 285))
				    (object RoleView "primitiveTypeDefinition" @740
					Parent_View 	@737
					location   	(-624, 222)
					label      	(object SegLabel @741
					    Parent_View 	@740
					    location   	(1204, 508)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	432
					    justify    	0
					    label      	"+primitiveTypeDefinition"
					    pctDist    	-3.000000
					    height     	62
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D55750243"
					client     	@737
					supplier   	@699
					vertices   	(list Points
					    (1360, 446)
					    (1412, 446)
					    (1412, 285))
					line_style 	3
					origin_attachment 	(1360, 446)
					terminal_attachment 	(1412, 285)
					label      	(object SegLabel @742
					    Parent_View 	@740
					    location   	(1373, 409)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.062147
					    height     	38
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleFinal" @743
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2080, 512)
				label      	(object ItemLabel
				    Parent_View 	@743
				    location   	(1917, 428)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"XSDSimpleFinal")
				stereotype 	(object ItemLabel
				    Parent_View 	@743
				    location   	(1917, 378)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C25D0295"
				compartment 	(object Compartment
				    Parent_View 	@743
				    location   	(1917, 488)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	3
				    max_width  	202
				    compartmentItems 	(list Compartment
					"+ list"
					"+ restriction"
					"+ union"))
				width      	344
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDVariety" @744
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2080, 176)
				label      	(object ItemLabel
				    Parent_View 	@744
				    location   	(1918, 92)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDVariety")
				stereotype 	(object ItemLabel
				    Parent_View 	@744
				    location   	(1918, 42)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B8FF7730249"
				width      	342
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @745
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6C7B0396"
				client     	@693
				supplier   	@688
				line_style 	3
				origin_attachment 	(591, 561)
				terminal_attachment 	(591, 522)
				drawSupplier 	@689)
			    (object InheritView "" @746
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6C800394"
				client     	@690
				supplier   	@688
				line_style 	3
				origin_attachment 	(272, 561)
				terminal_attachment 	(272, 522)
				drawSupplier 	@689)
			    (object InheritView "" @747
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D25680259"
				client     	@688
				supplier   	@670
				line_style 	3
				origin_attachment 	(366, 306)
				terminal_attachment 	(366, 215))
			    (object InheritView "" @748
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6C8801B4"
				client     	@648
				supplier   	@690
				line_style 	3
				origin_attachment 	(147, 828)
				terminal_attachment 	(147, 781)
				drawSupplier 	@691)
			    (object InheritView "" @749
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C7B590281"
				client     	@665
				supplier   	@678
				line_style 	3
				origin_attachment 	(150, 1840)
				terminal_attachment 	(150, 1444))))
		    (object ClassDiagram "5. Component Annotations"
			quid       	"3B69D68D00D2"
			title      	"5. Component Annotations"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeUse" @750
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(256, 80)
				label      	(object ItemLabel
				    Parent_View 	@750
				    location   	(88, 37)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	336
				    justify    	0
				    label      	"XSDAttributeUse")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B68354601A8"
				width      	354
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDParticle" @751
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(208, 1696)
				label      	(object ItemLabel
				    Parent_View 	@751
				    location   	(82, 1653)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	252
				    justify    	0
				    label      	"XSDParticle")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BBD01F7"
				width      	270
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @752
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1872, 1504)
				label      	(object ItemLabel
				    Parent_View 	@752
				    location   	(1626, 1461)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	492
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				width      	510
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDConstrainingFacet" @753
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1888, 304)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@753
				    location   	(1663, 261)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	450
				    justify    	0
				    label      	"XSDConstrainingFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C6B340093"
				width      	468
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDIdentityConstraintDefinition" @754
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(368, 1360)
				label      	(object ItemLabel
				    Parent_View 	@754
				    location   	(74, 1317)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	588
				    justify    	0
				    label      	"XSDIdentityConstraintDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B2603A2"
				width      	606
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDNotationDeclaration" @755
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(320, 704)
				label      	(object ItemLabel
				    Parent_View 	@755
				    location   	(86, 661)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	468
				    justify    	0
				    label      	"XSDNotationDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDAA021C"
				width      	486
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroupDefinition" @756
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(320, 1184)
				label      	(object ItemLabel
				    Parent_View 	@756
				    location   	(74, 1141)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	492
				    justify    	0
				    label      	"XSDModelGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED9A0205"
				width      	510
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @757
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(320, 544)
				label      	(object ItemLabel
				    Parent_View 	@757
				    location   	(86, 501)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	468
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				width      	486
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @758
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1200, 80)
				label      	(object ItemLabel
				    Parent_View 	@758
				    location   	(1068, 37)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	264
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	282
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @759
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1936, 1216)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@759
				    location   	(1750, 1173)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	372
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B66ECD302A9"
				width      	390
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @760
				location   	(1994, 1412)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@759
				vertices   	(list Points
				    (1994, 1412)
				    (1994, 1271)))
			    (object InheritView "" @761
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A1302A2"
				client     	@752
				supplier   	@759
				line_style 	3
				origin_attachment 	(2084, 1449)
				terminal_attachment 	(2084, 1412)
				drawSupplier 	@760)
			    (object ClassView "Class" "Logical View::xsd::XSDXPathDefinition" @762
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(272, 864)
				label      	(object ItemLabel
				    Parent_View 	@762
				    location   	(80, 821)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	384
				    justify    	0
				    label      	"XSDXPathDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6D83BB0355"
				width      	402
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDFacet" @763
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2000, 80)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@763
				    location   	(1892, 37)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	216
				    justify    	0
				    label      	"XSDFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C359403D2"
				width      	234
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupDefinition" @764
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(352, 384)
				label      	(object ItemLabel
				    Parent_View 	@764
				    location   	(84, 341)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	536
				    justify    	0
				    label      	"XSDAttributeGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED840290"
				width      	554
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeDeclaration" @765
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(320, 224)
				label      	(object ItemLabel
				    Parent_View 	@765
				    location   	(86, 181)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	468
				    justify    	0
				    label      	"XSDAttributeDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED2E0192"
				width      	486
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @766
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1792, 1712)
				label      	(object ItemLabel
				    Parent_View 	@766
				    location   	(1467, 1674)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	651
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				width      	669
				height     	100
				annotation 	8)
			    (object InheritView "" @767
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0D01901F1"
				client     	@766
				supplier   	@759
				line_style 	3
				origin_attachment 	(1572, 1662)
				terminal_attachment 	(1572, 1412)
				drawSupplier 	@760)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroup" @768
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 1024)
				label      	(object ItemLabel
				    Parent_View 	@768
				    location   	(78, 981)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDModelGroup")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6834E00291"
				width      	342
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDRepeatableFacet" @769
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1904, 560)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@769
				    location   	(1688, 517)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	432
				    justify    	0
				    label      	"XSDRepeatableFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C6AA6031A"
				width      	450
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDWildcard" @770
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(208, 1536)
				label      	(object ItemLabel
				    Parent_View 	@770
				    location   	(71, 1493)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	274
				    justify    	0
				    label      	"XSDWildcard")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6838370031"
				width      	292
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDAnnotation" @771
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1232, 944)
				label      	(object ItemLabel
				    Parent_View 	@771
				    location   	(872, 685)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	720
				    justify    	0
				    label      	"XSDAnnotation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDC80233"
				width      	738
				height     	543
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$132" @772
				location   	(865, 1359)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB0D0183"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$133" @773
					Parent_View 	@772
					location   	(-255, 559)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB0D033C"
					client     	@772
					supplier   	@754
					line_style 	3
					origin_attachment 	(865, 1359)
					terminal_attachment 	(671, 1359))
				    (object RoleView "annotation" @774
					Parent_View 	@772
					location   	(-255, 559)
					label      	(object SegLabel @775
					    Parent_View 	@774
					    location   	(798, 1321)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	-1.116667
					    height     	39
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB0D0346"
					client     	@772
					supplier   	@771
					vertices   	(list Points
					    (865, 1359)
					    (925, 1359)
					    (925, 1215))
					line_style 	3
					origin_attachment 	(865, 1359)
					terminal_attachment 	(925, 1215)
					label      	(object SegLabel @776
					    Parent_View 	@774
					    location   	(987, 1276)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.706422
					    height     	62
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$156" @777
				location   	(713, 709)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB0F0212"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$157" @778
					Parent_View 	@777
					location   	(-407, -90)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB1000C9"
					client     	@777
					supplier   	@755
					line_style 	3
					origin_attachment 	(713, 709)
					terminal_attachment 	(563, 709))
				    (object RoleView "annotation" @779
					Parent_View 	@777
					location   	(-407, -90)
					label      	(object SegLabel @780
					    Parent_View 	@779
					    location   	(727, 667)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.095238
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB1000D3"
					client     	@777
					supplier   	@771
					line_style 	3
					origin_attachment 	(713, 709)
					terminal_attachment 	(863, 709)
					label      	(object SegLabel @781
					    Parent_View 	@779
					    location   	(796, 753)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.553571
					    height     	44
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$150" @782
				location   	(719, 1193)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB15008A"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$151" @783
					Parent_View 	@782
					location   	(-401, 393)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB160096"
					client     	@782
					supplier   	@756
					line_style 	3
					origin_attachment 	(719, 1193)
					terminal_attachment 	(575, 1193))
				    (object RoleView "annotation" @784
					Parent_View 	@782
					location   	(-401, 393)
					label      	(object SegLabel @785
					    Parent_View 	@784
					    location   	(720, 1147)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.006993
					    height     	47
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB1600A0"
					client     	@782
					supplier   	@771
					line_style 	3
					origin_attachment 	(719, 1193)
					terminal_attachment 	(863, 1193)
					label      	(object SegLabel @786
					    Parent_View 	@784
					    location   	(806, 1240)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.604167
					    height     	47
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$110" @787
				location   	(785, 550)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB0A0066"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$111" @788
					Parent_View 	@787
					location   	(-335, -250)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB0B023F"
					client     	@787
					supplier   	@757
					line_style 	3
					origin_attachment 	(785, 550)
					terminal_attachment 	(563, 550))
				    (object RoleView "annotation" @789
					Parent_View 	@787
					location   	(-335, -250)
					label      	(object SegLabel @790
					    Parent_View 	@789
					    location   	(779, 516)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	-0.070707
					    height     	35
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB0B0249"
					client     	@787
					supplier   	@771
					vertices   	(list Points
					    (785, 550)
					    (884, 550)
					    (884, 673))
					line_style 	3
					origin_attachment 	(785, 550)
					terminal_attachment 	(884, 673)
					label      	(object SegLabel @791
					    Parent_View 	@789
					    location   	(935, 612)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.729730
					    height     	51
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$182" @792
				location   	(1184, 404)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69E4560290"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$183" @793
					Parent_View 	@792
					location   	(-32, -412)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69E4570165"
					client     	@792
					supplier   	@758
					line_style 	3
					origin_attachment 	(1184, 404)
					terminal_attachment 	(1184, 135))
				    (object RoleView "annotations" @794
					Parent_View 	@792
					location   	(-32, -412)
					label      	(object SegLabel @795
					    Parent_View 	@794
					    location   	(1324, 226)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	249
					    justify    	0
					    label      	"+annotations"
					    pctDist    	-0.665428
					    height     	140
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69E457016F"
					client     	@792
					supplier   	@771
					line_style 	3
					origin_attachment 	(1184, 404)
					terminal_attachment 	(1184, 673)
					label      	(object SegLabel @796
					    Parent_View 	@794
					    location   	(1251, 615)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.784387
					    height     	67
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$198" @797
				location   	(1752, 1034)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69E2910158"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$199" @798
					Parent_View 	@797
					location   	(536, 218)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69E292019F"
					client     	@797
					supplier   	@759
					vertices   	(list Points
					    (1752, 1034)
					    (1812, 1034)
					    (1812, 1161))
					line_style 	3
					origin_attachment 	(1752, 1034)
					terminal_attachment 	(1812, 1161))
				    (object RoleView "annotation" @799
					Parent_View 	@797
					location   	(536, 218)
					label      	(object SegLabel @800
					    Parent_View 	@799
					    location   	(1743, 997)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.059603
					    height     	37
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69E29201A9"
					client     	@797
					supplier   	@771
					line_style 	3
					origin_attachment 	(1752, 1034)
					terminal_attachment 	(1601, 1034)
					label      	(object SegLabel @801
					    Parent_View 	@799
					    location   	(1684, 1066)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.450331
					    height     	32
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$200" @802
				location   	(1896, 881)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B9006CF0088"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$201" @803
					Parent_View 	@802
					location   	(621, 40)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B9006D1015D"
					client     	@802
					supplier   	@759
					vertices   	(list Points
					    (1896, 881)
					    (1956, 881)
					    (1956, 1161))
					line_style 	3
					origin_attachment 	(1896, 881)
					terminal_attachment 	(1956, 1161))
				    (object RoleView "derivationAnnotation" @804
					Parent_View 	@802
					location   	(621, 40)
					label      	(object SegLabel @805
					    Parent_View 	@804
					    location   	(1821, 842)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	390
					    justify    	0
					    label      	"+derivationAnnotation"
					    pctDist    	0.254237
					    height     	40
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B9006D10167"
					client     	@802
					supplier   	@771
					line_style 	3
					origin_attachment 	(1896, 881)
					terminal_attachment 	(1601, 881)
					label      	(object SegLabel @806
					    Parent_View 	@804
					    location   	(1689, 914)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.705085
					    height     	33
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$202" @807
				location   	(2040, 715)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB330264"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$203" @808
					Parent_View 	@807
					location   	(920, -85)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB340284"
					client     	@807
					supplier   	@759
					vertices   	(list Points
					    (2040, 715)
					    (2100, 715)
					    (2100, 1161))
					line_style 	3
					origin_attachment 	(2040, 715)
					terminal_attachment 	(2100, 1161))
				    (object RoleView "annotations" @809
					Parent_View 	@807
					location   	(920, -85)
					label      	(object SegLabel @810
					    Parent_View 	@809
					    location   	(1758, 681)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+annotations"
					    pctDist    	0.643192
					    height     	35
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB34028E"
					client     	@807
					supplier   	@771
					line_style 	3
					origin_attachment 	(2040, 715)
					terminal_attachment 	(1601, 715)
					label      	(object SegLabel @811
					    Parent_View 	@809
					    location   	(1685, 746)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.809313
					    height     	31
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$220" @812
				location   	(668, 865)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C239134004F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$221" @813
					Parent_View 	@812
					location   	(-612, 33)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C23913600CA"
					client     	@812
					supplier   	@762
					line_style 	3
					origin_attachment 	(668, 865)
					terminal_attachment 	(473, 865))
				    (object RoleView "annotation" @814
					Parent_View 	@812
					location   	(-612, 33)
					label      	(object SegLabel @815
					    Parent_View 	@814
					    location   	(714, 825)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.234146
					    height     	41
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C23913600D4"
					client     	@812
					supplier   	@771
					line_style 	3
					origin_attachment 	(668, 865)
					terminal_attachment 	(863, 865)
					label      	(object SegLabel @816
					    Parent_View 	@814
					    location   	(801, 903)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.682051
					    height     	38
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$124" @817
				location   	(1472, 167)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D23B901CD"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$125" @818
					Parent_View 	@817
					location   	(256, -649)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D23BA01C4"
					client     	@817
					supplier   	@763
					vertices   	(list Points
					    (1472, 167)
					    (1472, 72)
					    (1883, 72))
					line_style 	3
					origin_attachment 	(1472, 167)
					terminal_attachment 	(1883, 72))
				    (object RoleView "annotation" @819
					Parent_View 	@817
					location   	(256, -649)
					label      	(object SegLabel @820
					    Parent_View 	@819
					    location   	(1604, 129)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	-0.076305
					    height     	132
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D23BA01CE"
					client     	@817
					supplier   	@771
					line_style 	3
					origin_attachment 	(1472, 167)
					terminal_attachment 	(1472, 673)
					label      	(object SegLabel @821
					    Parent_View 	@819
					    location   	(1419, 618)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.893574
					    height     	54
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$74" @822
				location   	(927, 350)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB060291"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$75" @823
					Parent_View 	@822
					location   	(-193, -450)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB070171"
					client     	@822
					supplier   	@764
					line_style 	3
					origin_attachment 	(927, 350)
					terminal_attachment 	(629, 350))
				    (object RoleView "annotation" @824
					Parent_View 	@822
					location   	(-193, -450)
					label      	(object SegLabel @825
					    Parent_View 	@824
					    location   	(878, 310)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	-0.816667
					    height     	41
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB070172"
					client     	@822
					supplier   	@771
					vertices   	(list Points
					    (927, 350)
					    (987, 350)
					    (987, 673))
					line_style 	3
					origin_attachment 	(927, 350)
					terminal_attachment 	(987, 673)
					label      	(object SegLabel @826
					    Parent_View 	@824
					    location   	(1037, 612)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.843342
					    height     	50
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$66" @827
				location   	(1027, 222)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DADC02F5"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$67" @828
					Parent_View 	@827
					location   	(-93, -578)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DADD0238"
					client     	@827
					supplier   	@765
					line_style 	3
					origin_attachment 	(1027, 222)
					terminal_attachment 	(563, 222))
				    (object RoleView "annotation" @829
					Parent_View 	@827
					location   	(-93, -578)
					label      	(object SegLabel @830
					    Parent_View 	@829
					    location   	(1003, 188)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	-0.406250
					    height     	35
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DADD0242"
					client     	@827
					supplier   	@771
					vertices   	(list Points
					    (1027, 222)
					    (1087, 222)
					    (1087, 673))
					line_style 	3
					origin_attachment 	(1027, 222)
					terminal_attachment 	(1087, 673)
					label      	(object SegLabel @831
					    Parent_View 	@829
					    location   	(1137, 613)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	100
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.882583
					    height     	50
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$90" @832
				location   	(1494, 1438)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B90068801C2"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$91" @833
					Parent_View 	@832
					location   	(214, 590)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B90068A0111"
					client     	@832
					supplier   	@766
					line_style 	3
					origin_attachment 	(1494, 1438)
					terminal_attachment 	(1494, 1662))
				    (object RoleView "contentAnnotation" @834
					Parent_View 	@832
					location   	(214, 590)
					label      	(object SegLabel @835
					    Parent_View 	@834
					    location   	(1696, 1356)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	360
					    justify    	0
					    label      	"+contentAnnotation"
					    pctDist    	0.367713
					    height     	202
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B90068A011B"
					client     	@832
					supplier   	@771
					line_style 	3
					origin_attachment 	(1494, 1438)
					terminal_attachment 	(1494, 1215)
					label      	(object SegLabel @836
					    Parent_View 	@834
					    location   	(1443, 1279)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.713004
					    height     	51
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$144" @837
				location   	(637, 1022)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB1702C8"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$145" @838
					Parent_View 	@837
					location   	(-483, 222)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB1803E2"
					client     	@837
					supplier   	@768
					line_style 	3
					origin_attachment 	(637, 1022)
					terminal_attachment 	(411, 1022))
				    (object RoleView "annotation" @839
					Parent_View 	@837
					location   	(-483, 222)
					label      	(object SegLabel @840
					    Parent_View 	@839
					    location   	(710, 979)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.328889
					    height     	44
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB190004"
					client     	@837
					supplier   	@771
					line_style 	3
					origin_attachment 	(637, 1022)
					terminal_attachment 	(863, 1022)
					label      	(object SegLabel @841
					    Parent_View 	@839
					    location   	(802, 1062)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.730088
					    height     	40
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$64" @842
				location   	(1581, 607)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C626EA70102"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$65" @843
					Parent_View 	@842
					location   	(301, -225)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C626EA90191"
					client     	@842
					supplier   	@769
					vertices   	(list Points
					    (1581, 607)
					    (1581, 547)
					    (1679, 547))
					line_style 	3
					origin_attachment 	(1581, 607)
					terminal_attachment 	(1679, 547))
				    (object RoleView "annotations" @844
					Parent_View 	@842
					location   	(301, -225)
					label      	(object SegLabel @845
					    Parent_View 	@844
					    location   	(1669, 462)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+annotations"
					    pctDist    	-2.196970
					    height     	88
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C626EA90192"
					client     	@842
					supplier   	@771
					line_style 	3
					origin_attachment 	(1581, 607)
					terminal_attachment 	(1581, 673)
					label      	(object SegLabel @846
					    Parent_View 	@844
					    location   	(1539, 620)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.196970
					    height     	42
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$204" @847
				location   	(849, 1496)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69DB11026F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$205" @848
					Parent_View 	@847
					location   	(-271, 696)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB1201F9"
					client     	@847
					supplier   	@770
					line_style 	3
					origin_attachment 	(849, 1496)
					terminal_attachment 	(354, 1496))
				    (object RoleView "annotation" @849
					Parent_View 	@847
					location   	(-271, 696)
					label      	(object SegLabel @850
					    Parent_View 	@849
					    location   	(942, 1464)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.188259
					    height     	33
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69DB120203"
					client     	@847
					supplier   	@771
					vertices   	(list Points
					    (849, 1496)
					    (1062, 1496)
					    (1062, 1215))
					line_style 	3
					origin_attachment 	(849, 1496)
					terminal_attachment 	(1062, 1215)
					label      	(object SegLabel @851
					    Parent_View 	@849
					    location   	(1115, 1279)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.872690
					    height     	53
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$206" @852
				location   	(952, 1565)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C626EB30005"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$207" @853
					Parent_View 	@852
					location   	(-328, 733)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C626EB40327"
					client     	@852
					supplier   	@770
					line_style 	3
					origin_attachment 	(952, 1565)
					terminal_attachment 	(354, 1565))
				    (object RoleView "annotations" @854
					Parent_View 	@852
					location   	(-328, 733)
					label      	(object SegLabel @855
					    Parent_View 	@854
					    location   	(1075, 1538)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+annotations"
					    pctDist    	0.204959
					    height     	28
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C626EB40332"
					client     	@852
					supplier   	@771
					vertices   	(list Points
					    (952, 1565)
					    (1200, 1565)
					    (1200, 1215))
					line_style 	3
					origin_attachment 	(952, 1565)
					terminal_attachment 	(1200, 1215)
					label      	(object SegLabel @856
					    Parent_View 	@854
					    location   	(1254, 1275)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.900000
					    height     	54
					    orientation 	1))))
			    (object InheritView "" @857
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6C800394"
				client     	@753
				supplier   	@763
				line_style 	3
				origin_attachment 	(1984, 249)
				terminal_attachment 	(1984, 135))
			    (object InheritView "" @858
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C6C8F002E"
				client     	@769
				supplier   	@753
				line_style 	3
				origin_attachment 	(1997, 505)
				terminal_attachment 	(1997, 359))))
		    (object ClassDiagram "6. Concrete Components"
			quid       	"3B6AD74D03C4"
			title      	"6. Concrete Components"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDComponent" @859
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(288, 416)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@859
				    location   	(126, 373)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846E90029"
				width      	342
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupContent" @860
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(832, 416)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@860
				    location   	(568, 373)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	528
				    justify    	0
				    label      	"XSDAttributeGroupContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6940200089"
				width      	546
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefineContent" @861
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1200, 672)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@861
				    location   	(991, 629)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	418
				    justify    	0
				    label      	"XSDRedefineContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AE2060172"
				width      	436
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaContent" @862
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1360, 416)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@862
				    location   	(1156, 373)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	408
				    justify    	0
				    label      	"XSDSchemaContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B688CB800BA"
				width      	426
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @863
				location   	(1360, 561)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@862
				vertices   	(list Points
				    (1360, 561)
				    (1360, 471)))
			    (object ClassView "Class" "Logical View::xsd::XSDInclude" @864
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1632, 1200)
				label      	(object ItemLabel
				    Parent_View 	@864
				    location   	(1512, 1157)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	240
				    justify    	0
				    label      	"XSDInclude")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B688C7D0250"
				width      	258
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDImport" @865
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1408, 944)
				label      	(object ItemLabel
				    Parent_View 	@865
				    location   	(1294, 901)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	228
				    justify    	0
				    label      	"XSDImport")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B688C93017F"
				width      	246
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefine" @866
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1936, 1200)
				label      	(object ItemLabel
				    Parent_View 	@866
				    location   	(1805, 1157)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	262
				    justify    	0
				    label      	"XSDRedefine")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B688C9B02AD"
				width      	280
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDAnnotation" @867
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(800, 1200)
				label      	(object ItemLabel
				    Parent_View 	@867
				    location   	(375, 1153)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	851
				    justify    	0
				    label      	"XSDAnnotation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDC80233"
				width      	869
				height     	119
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$142" @868
				location   	(1368, 1206)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6ADCC5007E"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$143" @869
					Parent_View 	@868
					location   	(1160, 406)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6ADCC6006B"
					client     	@868
					supplier   	@864
					line_style 	3
					origin_attachment 	(1368, 1206)
					terminal_attachment 	(1503, 1206))
				    (object RoleView "annotation" @870
					Parent_View 	@868
					location   	(1160, 406)
					label      	(object SegLabel @871
					    Parent_View 	@870
					    location   	(1347, 1154)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.154412
					    height     	53
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6ADCC6006C"
					client     	@868
					supplier   	@867
					line_style 	3
					origin_attachment 	(1368, 1206)
					terminal_attachment 	(1234, 1206)
					label      	(object SegLabel @872
					    Parent_View 	@870
					    location   	(1300, 1253)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	107
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.514706
					    height     	47
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$140" @873
				location   	(1168, 1022)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6ADCD802FC"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$141" @874
					Parent_View 	@873
					location   	(960, 222)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6ADCD9018B"
					client     	@873
					supplier   	@865
					vertices   	(list Points
					    (1168, 1022)
					    (1168, 962)
					    (1285, 962))
					line_style 	3
					origin_attachment 	(1168, 1022)
					terminal_attachment 	(1285, 962))
				    (object RoleView "annotation" @875
					Parent_View 	@873
					location   	(960, 222)
					label      	(object SegLabel @876
					    Parent_View 	@875
					    location   	(1290, 1075)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	216
					    justify    	0
					    label      	"+annotation"
					    pctDist    	0.445378
					    height     	122
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6ADCD9018C"
					client     	@873
					supplier   	@867
					line_style 	3
					origin_attachment 	(1168, 1022)
					terminal_attachment 	(1168, 1141)
					label      	(object SegLabel @877
					    Parent_View 	@875
					    location   	(1127, 1074)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.436975
					    height     	41
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$162" @878
				location   	(1563, 1353)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6ADE42009A"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$163" @879
					Parent_View 	@878
					location   	(1355, 553)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6ADE4302FE"
					client     	@878
					supplier   	@866
					vertices   	(list Points
					    (1563, 1353)
					    (1940, 1353)
					    (1940, 1255))
					line_style 	3
					origin_attachment 	(1563, 1353)
					terminal_attachment 	(1940, 1255))
				    (object RoleView "annotations" @880
					Parent_View 	@878
					location   	(1355, 553)
					label      	(object SegLabel @881
					    Parent_View 	@880
					    location   	(1317, 1322)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+annotations"
					    pctDist    	0.516807
					    height     	32
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6ADE430308"
					client     	@878
					supplier   	@867
					vertices   	(list Points
					    (1563, 1353)
					    (1181, 1353)
					    (1181, 1259))
					line_style 	3
					origin_attachment 	(1563, 1353)
					terminal_attachment 	(1181, 1259)
					label      	(object SegLabel @882
					    Parent_View 	@880
					    location   	(1130, 1326)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.861345
					    height     	52
					    orientation 	0))))
			    (object InheritTreeView "" @883
				location   	(288, 561)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@859
				vertices   	(list Points
				    (288, 561)
				    (288, 471)))
			    (object ClassView "Class" "Logical View::xsd::XSDNamedComponent" @884
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(688, 672)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@884
				    location   	(460, 629)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	456
				    justify    	0
				    label      	"XSDNamedComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846D303A4"
				width      	474
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDParticleContent" @885
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1856, 416)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@885
				    location   	(1658, 373)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	396
				    justify    	0
				    label      	"XSDParticleContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6BD22300C6"
				width      	414
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefinableComponent" @886
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(720, 960)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@886
				    location   	(450, 917)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	540
				    justify    	0
				    label      	"XSDRedefinableComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B7FCA8B020B"
				width      	558
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDScope" @887
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(224, 672)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@887
				    location   	(110, 629)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	228
				    justify    	0
				    label      	"XSDScope")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B54000F2"
				width      	246
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @888
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCD640231"
				client     	@887
				supplier   	@859
				line_style 	3
				origin_attachment 	(221, 617)
				terminal_attachment 	(221, 561)
				drawSupplier 	@883)
			    (object InheritView "" @889
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0CEA20197"
				client     	@884
				supplier   	@859
				line_style 	3
				origin_attachment 	(589, 617)
				terminal_attachment 	(589, 561)
				drawSupplier 	@883)
			    (object InheritView "" @890
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AE2B301D5"
				client     	@861
				supplier   	@862
				line_style 	3
				origin_attachment 	(1016, 617)
				terminal_attachment 	(1016, 561)
				drawSupplier 	@863)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaCompositor" @891
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1824, 944)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@891
				    location   	(1590, 901)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	468
				    justify    	0
				    label      	"XSDSchemaCompositor")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3C21DB4102AE"
				width      	486
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @892
				location   	(1824, 1089)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@891
				vertices   	(list Points
				    (1824, 1089)
				    (1824, 999)))
			    (object InheritView "" @893
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AD8DC0381"
				client     	@864
				supplier   	@891
				line_style 	3
				origin_attachment 	(1666, 1145)
				terminal_attachment 	(1666, 1089)
				drawSupplier 	@892)
			    (object InheritView "" @894
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DB640240"
				client     	@866
				supplier   	@891
				line_style 	3
				origin_attachment 	(1934, 1145)
				terminal_attachment 	(1934, 1089)
				drawSupplier 	@892)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaDirective" @895
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1840, 672)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@895
				    location   	(1630, 629)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	420
				    justify    	0
				    label      	"XSDSchemaDirective")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD8A202A2"
				width      	438
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @896
				location   	(1762, 819)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@895
				vertices   	(list Points
				    (1762, 819)
				    (1762, 727)))
			    (object InheritView "" @897
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AD8D9003E"
				client     	@865
				supplier   	@895
				line_style 	3
				origin_attachment 	(1416, 889)
				terminal_attachment 	(1416, 819)
				drawSupplier 	@896)
			    (object InheritView "" @898
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AE32102AF"
				client     	@895
				supplier   	@862
				line_style 	3
				origin_attachment 	(1756, 617)
				terminal_attachment 	(1756, 561)
				drawSupplier 	@863)
			    (object ClassView "Class" "Logical View::xsd::XSDConcreteComponent" @899
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				location   	(1120, 144)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@899
				    location   	(875, 101)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	490
				    justify    	0
				    label      	"XSDConcreteComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD7B40065"
				width      	508
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @900
				location   	(1120, 289)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@899
				vertices   	(list Points
				    (1120, 289)
				    (1120, 199)))
			    (object AssociationViewNew "$UNNAMED$104" @901
				location   	(1485, 215)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B751B0803C7"
				roleview_list 	(list RoleViews
				    (object RoleView "container" @902
					Parent_View 	@901
					location   	(989, 103)
					label      	(object SegLabel @903
					    Parent_View 	@902
					    location   	(1604, 210)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	192
					    justify    	0
					    label      	"+container"
					    pctDist    	0.033113
					    height     	119
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B751B0C01CE"
					client     	@901
					supplier   	@899
					vertices   	(list Points
					    (1485, 215)
					    (1485, 176)
					    (1374, 176))
					line_style 	3
					origin_attachment 	(1485, 215)
					terminal_attachment 	(1374, 176)
					label      	(object SegLabel @904
					    Parent_View 	@902
					    location   	(1435, 226)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	69
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.602649
					    height     	50
					    orientation 	0))
				    (object RoleView "$UNNAMED$105" @905
					Parent_View 	@901
					location   	(989, 103)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B751B0C01CF"
					client     	@901
					supplier   	@899
					vertices   	(list Points
					    (1485, 215)
					    (1485, 254)
					    (1345, 254)
					    (1345, 199))
					line_style 	3
					origin_attachment 	(1485, 215)
					terminal_attachment 	(1345, 199))))
			    (object AssociationViewNew "$UNNAMED$106" @906
				location   	(773, 216)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B751B480261"
				roleview_list 	(list RoleViews
				    (object RoleView "rootContainer" @907
					Parent_View 	@906
					location   	(53, 104)
					label      	(object SegLabel @908
					    Parent_View 	@907
					    location   	(614, 217)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	264
					    justify    	0
					    label      	"+rootContainer"
					    pctDist    	-0.025000
					    height     	160
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B751B4C0285"
					client     	@906
					supplier   	@899
					vertices   	(list Points
					    (773, 216)
					    (773, 176)
					    (866, 176))
					line_style 	3
					origin_attachment 	(773, 216)
					terminal_attachment 	(866, 176)
					label      	(object SegLabel @909
					    Parent_View 	@907
					    location   	(800, 228)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.300000
					    height     	27
					    orientation 	1))
				    (object RoleView "$UNNAMED$107" @910
					Parent_View 	@906
					location   	(53, 104)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B751B4C0286"
					client     	@906
					supplier   	@899
					vertices   	(list Points
					    (773, 216)
					    (773, 257)
					    (895, 257)
					    (895, 199))
					line_style 	3
					origin_attachment 	(773, 216)
					terminal_attachment 	(895, 199))))
			    (object InheritView "" @911
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AD8E60372"
				client     	@862
				supplier   	@899
				line_style 	3
				origin_attachment 	(1367, 361)
				terminal_attachment 	(1367, 289)
				drawSupplier 	@900)
			    (object InheritView "" @912
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B72D8E200EA"
				client     	@860
				supplier   	@899
				line_style 	3
				origin_attachment 	(752, 361)
				terminal_attachment 	(752, 289)
				drawSupplier 	@900)
			    (object InheritView "" @913
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0CEA903D2"
				client     	@859
				supplier   	@899
				line_style 	3
				origin_attachment 	(299, 361)
				terminal_attachment 	(299, 289)
				drawSupplier 	@900)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @914
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(192, 1200)
				label      	(object ItemLabel
				    Parent_View 	@914
				    location   	(61, 1157)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	262
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	280
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @915
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCC4A0182"
				client     	@914
				supplier   	@887
				line_style 	3
				origin_attachment 	(216, 1145)
				terminal_attachment 	(216, 727))
			    (object AssociationViewNew "$UNNAMED$218" @916
				location   	(1382, 1425)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DD0C03DB"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$219" @917
					Parent_View 	@916
					location   	(1190, 225)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DD100304"
					client     	@916
					supplier   	@891
					vertices   	(list Points
					    (1382, 1425)
					    (2147, 1425)
					    (2147, 943)
					    (2067, 943))
					line_style 	3
					origin_attachment 	(1382, 1425)
					terminal_attachment 	(2067, 943))
				    (object RoleView "incorporatedSchema" @918
					Parent_View 	@916
					location   	(1190, 225)
					label      	(object SegLabel @919
					    Parent_View 	@918
					    location   	(445, 1389)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+incorporatedSchema"
					    pctDist    	0.706546
					    height     	37
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DD100305"
					client     	@916
					supplier   	@914
					vertices   	(list Points
					    (1382, 1425)
					    (225, 1425)
					    (225, 1255))
					line_style 	3
					origin_attachment 	(1382, 1425)
					terminal_attachment 	(225, 1255)
					label      	(object SegLabel @920
					    Parent_View 	@918
					    location   	(183, 1392)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.896915
					    height     	43
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$216" @921
				location   	(1505, 1503)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DCC700EC"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$217" @922
					Parent_View 	@921
					location   	(1313, 303)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DCCE0042"
					client     	@921
					supplier   	@895
					vertices   	(list Points
					    (1505, 1503)
					    (2188, 1503)
					    (2188, 675)
					    (2059, 675))
					line_style 	3
					origin_attachment 	(1505, 1503)
					terminal_attachment 	(2059, 675))
				    (object RoleView "resolvedSchema" @923
					Parent_View 	@921
					location   	(1313, 303)
					label      	(object SegLabel @924
					    Parent_View 	@923
					    location   	(303, 1472)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	324
					    justify    	0
					    label      	"+resolvedSchema"
					    pctDist    	0.733333
					    height     	32
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DCCE0043"
					client     	@921
					supplier   	@914
					vertices   	(list Points
					    (1505, 1503)
					    (113, 1503)
					    (113, 1255))
					line_style 	3
					origin_attachment 	(1505, 1503)
					terminal_attachment 	(113, 1255)
					label      	(object SegLabel @925
					    Parent_View 	@923
					    location   	(73, 1472)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.867683
					    height     	41
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$108" @926
				location   	(66, 244)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B751C310356"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$109" @927
					Parent_View 	@926
					location   	(-94, -444)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B751C330331"
					client     	@926
					supplier   	@899
					vertices   	(list Points
					    (66, 244)
					    (66, 144)
					    (866, 144))
					line_style 	3
					origin_attachment 	(66, 244)
					terminal_attachment 	(866, 144))
				    (object RoleView "schema" @928
					Parent_View 	@926
					location   	(-94, -444)
					label      	(object SegLabel @929
					    Parent_View 	@928
					    location   	(165, 93)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+schema"
					    pctDist    	-0.168113
					    height     	99
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B751C33033B"
					client     	@926
					supplier   	@914
					line_style 	3
					origin_attachment 	(66, 244)
					terminal_attachment 	(66, 1145)
					label      	(object SegLabel @930
					    Parent_View 	@928
					    location   	(136, 184)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	113
					    justify    	0
					    label      	"0..1"
					    pctDist    	-0.066593
					    height     	70
					    orientation 	0))))
			    (object InheritView "" @931
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B780BD90059"
				client     	@885
				supplier   	@899
				line_style 	3
				origin_attachment 	(1759, 361)
				terminal_attachment 	(1759, 289)
				drawSupplier 	@900)
			    (object InheritView "" @932
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69E1770116"
				client     	@867
				supplier   	@859
				line_style 	3
				origin_attachment 	(400, 1141)
				terminal_attachment 	(400, 561)
				drawSupplier 	@883)
			    (object InheritTreeView "" @933
				location   	(1012, 837)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@861
				vertices   	(list Points
				    (1012, 837)
				    (1012, 727)))
			    (object InheritView "" @934
				stereotype 	(object SegLabel @935
				    Parent_View 	@934
				    location   	(1071, 871)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	243
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.888158
				    height     	34
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B7FD4E20366"
				client     	@867
				supplier   	@861
				line_style 	3
				origin_attachment 	(1037, 1141)
				terminal_attachment 	(1037, 837)
				drawSupplier 	@933)
			    (object InheritView "" @936
				stereotype 	(object SegLabel @937
				    Parent_View 	@936
				    location   	(890, 865)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	263
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.581633
				    height     	36
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B7FD4BA023C"
				client     	@886
				supplier   	@861
				line_style 	3
				origin_attachment 	(925, 905)
				terminal_attachment 	(925, 837)
				drawSupplier 	@933)
			    (object InheritView "" @938
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DB560092"
				client     	@891
				supplier   	@895
				line_style 	3
				origin_attachment 	(1828, 889)
				terminal_attachment 	(1828, 819)
				drawSupplier 	@896)))
		    (object ClassDiagram "7. Concrete Attributes"
			quid       	"3B9F8F7602C7"
			title      	"7. Concrete Attributes"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDFeature" @939
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2144, 1440)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@939
				    location   	(1938, 1359)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	412
				    justify    	0
				    label      	"XSDFeature")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B537026C"
				compartment 	(object Compartment
				    Parent_View 	@939
				    location   	(1938, 1419)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	382
				    compartmentItems 	(list Compartment
					"+ form : XSDForm"
					"+ lexicalValue : String"))
				width      	430
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDForm" @940
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2560, 1424)
				label      	(object ItemLabel
				    Parent_View 	@940
				    location   	(2398, 1365)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"XSDForm")
				stereotype 	(object ItemLabel
				    Parent_View 	@940
				    location   	(2398, 1315)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	324
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B9F913B01EB"
				width      	342
				height     	242
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDConcreteComponent" @941
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(368, 96)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@941
				    location   	(40, 37)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	657
				    justify    	0
				    label      	"XSDConcreteComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD7B40065"
				compartment 	(object Compartment
				    Parent_View 	@941
				    location   	(40, 97)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	1
				    max_width  	446
				    compartmentItems 	(list Compartment
					"+ element : DOMElement"))
				width      	675
				height     	143
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDComponent" @942
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(848, 384)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@942
				    location   	(687, 333)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	322
				    justify    	0
				    label      	"XSDComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846E90029"
				width      	340
				height     	126
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDNamedComponent" @943
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1904, 944)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@943
				    location   	(1678, 892)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	452
				    justify    	0
				    label      	"XSDNamedComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846D303A4"
				width      	470
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefinableComponent" @944
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1600, 1408)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@944
				    location   	(1328, 1356)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	544
				    justify    	0
				    label      	"XSDRedefinableComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B7FCA8B020B"
				width      	562
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDScope" @945
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(864, 624)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@945
				    location   	(745, 573)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	238
				    justify    	0
				    label      	"XSDScope")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B54000F2"
				width      	256
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @946
				location   	(850, 537)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@942
				vertices   	(list Points
				    (850, 537)
				    (850, 447)))
			    (object ClassView "Class" "Logical View::xsd::DOMElement" @947
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1248, 128)
				label      	(object ItemLabel
				    Parent_View 	@947
				    location   	(873, 90)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	751
				    justify    	0
				    label      	"DOMElement")
				stereotype 	(object ItemLabel
				    Parent_View 	@947
				    location   	(873, 40)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	751
				    justify    	0
				    label      	"<<datatype>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	14671839
				quidu      	"3B8189790200"
				width      	769
				height     	200
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaDirective" @948
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(288, 640)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@948
				    location   	(41, 584)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	494
				    justify    	0
				    label      	"XSDSchemaDirective")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD8A202A2"
				width      	512
				height     	136
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaContent" @949
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 384)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@949
				    location   	(38, 333)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	404
				    justify    	0
				    label      	"XSDSchemaContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B688CB800BA"
				width      	422
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @950
				location   	(368, 263)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@941
				vertices   	(list Points
				    (368, 263)
				    (368, 167)))
			    (object ClassView "Class" "Logical View::xsd::XSDDisallowedSubstitutions" @951
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(992, 1456)
				label      	(object ItemLabel
				    Parent_View 	@951
				    location   	(723, 1347)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	538
				    justify    	0
				    label      	"XSDDisallowedSubstitutions")
				stereotype 	(object ItemLabel
				    Parent_View 	@951
				    location   	(723, 1297)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	538
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C5A403DF"
				compartment 	(object Compartment
				    Parent_View 	@951
				    location   	(723, 1407)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	4
				    max_width  	225
				    compartmentItems 	(list Compartment
					"+ substitution"
					"+ extension"
					"+ restriction"
					"+ all"))
				width      	556
				height     	342
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDProhibitedSubstitutions" @952
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(880, 1792)
				label      	(object ItemLabel
				    Parent_View 	@952
				    location   	(614, 1708)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	532
				    justify    	0
				    label      	"XSDProhibitedSubstitutions")
				stereotype 	(object ItemLabel
				    Parent_View 	@952
				    location   	(614, 1658)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	532
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C5BE0272"
				compartment 	(object Compartment
				    Parent_View 	@952
				    location   	(614, 1768)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	3
				    max_width  	198
				    compartmentItems 	(list Compartment
					"+ extension"
					"+ restriction"
					"+ all"))
				width      	550
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @953
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(912, 2096)
				label      	(object ItemLabel
				    Parent_View 	@953
				    location   	(532, 2040)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	760
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				compartment 	(object Compartment
				    Parent_View 	@953
				    location   	(532, 2100)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	1
				    max_width  	723
				    compartmentItems 	(list Compartment
					"<<0..*>> + lexicalFinal : XSDSimpleFinal"))
				width      	778
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleFinal" @954
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(208, 1984)
				label      	(object ItemLabel
				    Parent_View 	@954
				    location   	(45, 1875)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"XSDSimpleFinal")
				stereotype 	(object ItemLabel
				    Parent_View 	@954
				    location   	(45, 1825)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	326
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C25D0295"
				width      	344
				height     	342
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexFinal" @955
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2544, 2016)
				label      	(object ItemLabel
				    Parent_View 	@955
				    location   	(2362, 1932)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	364
				    justify    	0
				    label      	"XSDComplexFinal")
				stereotype 	(object ItemLabel
				    Parent_View 	@955
				    location   	(2362, 1882)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	364
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3B97C2CA01CB"
				width      	382
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeUse" @956
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(352, 1360)
				label      	(object ItemLabel
				    Parent_View 	@956
				    location   	(41, 1279)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	622
				    justify    	0
				    label      	"XSDAttributeUse")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B68354601A8"
				compartment 	(object Compartment
				    Parent_View 	@956
				    location   	(41, 1339)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	2
				    max_width  	588
				    compartmentItems 	(list Compartment
					"+ use : XSDAttributeUseCategory"
					"+ lexicalValue : String"))
				width      	640
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeUseCategory" @957
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(288, 1632)
				label      	(object ItemLabel
				    Parent_View 	@957
				    location   	(41, 1548)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	494
				    justify    	0
				    label      	"XSDAttributeUseCategory")
				stereotype 	(object ItemLabel
				    Parent_View 	@957
				    location   	(41, 1498)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	494
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3BA7B0E801A8"
				width      	512
				height     	292
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDTerm" @958
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2608, 928)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@958
				    location   	(2498, 881)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	220
				    justify    	0
				    label      	"XSDTerm")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B683C5E0174"
				width      	238
				height     	119
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @959
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2240, 1712)
				label      	(object ItemLabel
				    Parent_View 	@959
				    location   	(1757, 1631)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	966
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				compartment 	(object Compartment
				    Parent_View 	@959
				    location   	(1757, 1691)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	934
				    compartmentItems 	(list Compartment
					"<<0..*>> + lexicalFinal : XSDProhibitedSubstitutions"
					"<<0..*>> + block : XSDDisallowedSubstitutions"))
				width      	984
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDWildcard" @960
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2272, 1152)
				label      	(object ItemLabel
				    Parent_View 	@960
				    location   	(1828, 1096)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	888
				    justify    	0
				    label      	"XSDWildcard")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6838370031"
				compartment 	(object Compartment
				    Parent_View 	@960
				    location   	(1828, 1156)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	1
				    max_width  	852
				    compartmentItems 	(list Compartment
					"<<0..*>> + lexicalNamespaceConstraint : String"))
				width      	906
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @961
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1120, 1008)
				label      	(object ItemLabel
				    Parent_View 	@961
				    location   	(622, 777)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	996
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	1014
				height     	486
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDImport" @962
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 960)
				label      	(object ItemLabel
				    Parent_View 	@962
				    location   	(37, 904)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	406
				    justify    	0
				    label      	"XSDImport")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B688C93017F"
				width      	424
				height     	136
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDFacet" @963
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1344, 656)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@963
				    location   	(1138, 600)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	412
				    justify    	0
				    label      	"XSDFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C359403D2"
				compartment 	(object Compartment
				    Parent_View 	@963
				    location   	(1138, 660)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	1
				    max_width  	378
				    compartmentItems 	(list Compartment
					"+ lexicalValue : String"))
				width      	430
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @964
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1840, 2048)
				label      	(object ItemLabel
				    Parent_View 	@964
				    location   	(1410, 1942)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	860
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				compartment 	(object Compartment
				    Parent_View 	@964
				    location   	(1410, 2002)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	3
				    max_width  	822
				    compartmentItems 	(list Compartment
					"<<0..*>> + lexicalFinal : XSDComplexFinal"
					"<<0..*>> + block : XSDProhibitedSubstitutions"
					"+ mixed : boolean"))
				width      	878
				height     	236
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @965
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1488, 1696)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@965
				    location   	(1304, 1644)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	368
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B66ECD302A9"
				width      	386
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @966
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAB1004D"
				client     	@965
				supplier   	@944
				line_style 	3
				origin_attachment 	(1506, 1632)
				terminal_attachment 	(1506, 1472))
			    (object ClassView "Class" "Logical View::xsd::XSDAnnotation" @967
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2208, 704)
				label      	(object ItemLabel
				    Parent_View 	@967
				    location   	(1758, 598)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	900
				    justify    	0
				    label      	"XSDAnnotation")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDC80233"
				width      	918
				height     	236
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @968
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6848AA01D3"
				client     	@958
				supplier   	@942
				line_style 	3
				origin_attachment 	(2696, 869)
				terminal_attachment 	(2696, 537)
				drawSupplier 	@946)
			    (object InheritView "" @969
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69EDEE01BF"
				client     	@959
				supplier   	@939
				line_style 	3
				origin_attachment 	(2094, 1619)
				terminal_attachment 	(2094, 1533))
			    (object InheritTreeView "" @970
				location   	(1487, 1856)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@965
				vertices   	(list Points
				    (1487, 1856)
				    (1487, 1760)))
			    (object ClassView "Class" "Logical View::xsd::DOMAttr" @971
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2400, 384)
				label      	(object ItemLabel
				    Parent_View 	@971
				    location   	(2080, 350)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	640
				    justify    	0
				    label      	"DOMAttr")
				stereotype 	(object ItemLabel
				    Parent_View 	@971
				    location   	(2080, 300)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	640
				    justify    	0
				    label      	"<<datatype>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	14671839
				quidu      	"3BBF8C8901B6"
				width      	658
				height     	192
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @972
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0D01901F1"
				client     	@964
				supplier   	@965
				line_style 	3
				origin_attachment 	(1734, 1930)
				terminal_attachment 	(1734, 1856)
				drawSupplier 	@970)
			    (object InheritView "" @973
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D25680259"
				client     	@963
				supplier   	@942
				line_style 	3
				origin_attachment 	(1328, 588)
				terminal_attachment 	(1328, 537)
				drawSupplier 	@946)
			    (object InheritView "" @974
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69E1770116"
				client     	@967
				supplier   	@942
				line_style 	3
				origin_attachment 	(2190, 586)
				terminal_attachment 	(2190, 537)
				drawSupplier 	@946)
			    (object InheritView "" @975
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AE32102AF"
				client     	@948
				supplier   	@949
				line_style 	3
				origin_attachment 	(222, 572)
				terminal_attachment 	(222, 447))
			    (object InheritView "" @976
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AD8E60372"
				client     	@949
				supplier   	@941
				line_style 	3
				origin_attachment 	(260, 321)
				terminal_attachment 	(260, 263)
				drawSupplier 	@950)
			    (object InheritView "" @977
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AD8D9003E"
				client     	@962
				supplier   	@948
				line_style 	3
				origin_attachment 	(223, 892)
				terminal_attachment 	(223, 708))
			    (object InheritView "" @978
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A3A0041"
				client     	@960
				supplier   	@958
				line_style 	3
				origin_attachment 	(2600, 1084)
				terminal_attachment 	(2600, 987))
			    (object ClassView "Class" "Logical View::xsd::DOMDocument" @979
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2336, 128)
				label      	(object ItemLabel
				    Parent_View 	@979
				    location   	(1957, 94)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	758
				    justify    	0
				    label      	"DOMDocument")
				stereotype 	(object ItemLabel
				    Parent_View 	@979
				    location   	(1957, 44)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	758
				    justify    	0
				    label      	"<<datatype>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	14671839
				quidu      	"3C27850E0381"
				width      	776
				height     	192
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @980
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0CEA903D2"
				client     	@942
				supplier   	@941
				line_style 	3
				origin_attachment 	(856, 321)
				terminal_attachment 	(856, 263)
				drawSupplier 	@950)
			    (object ClassView "Class" "Logical View::xsd::DOMNode" @981
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1568, 384)
				label      	(object ItemLabel
				    Parent_View 	@981
				    location   	(1234, 350)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	668
				    justify    	0
				    label      	"DOMNode")
				stereotype 	(object ItemLabel
				    Parent_View 	@981
				    location   	(1234, 300)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	668
				    justify    	0
				    label      	"<<datatype>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	14671839
				quidu      	"3BFE64A50117"
				width      	686
				height     	192
				annotation 	8
				autoResize 	TRUE)
			    (object InheritView "" @982
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCD640231"
				client     	@945
				supplier   	@942
				line_style 	3
				origin_attachment 	(850, 561)
				terminal_attachment 	(850, 537)
				drawSupplier 	@946)
			    (object InheritView "" @983
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B72D7BB0349"
				client     	@956
				supplier   	@942
				line_style 	3
				origin_attachment 	(575, 1267)
				terminal_attachment 	(575, 537)
				drawSupplier 	@946)
			    (object InheritView "" @984
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0CEA20197"
				client     	@943
				supplier   	@942
				line_style 	3
				origin_attachment 	(1694, 880)
				terminal_attachment 	(1694, 537)
				drawSupplier 	@946)
			    (object InheritView "" @985
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCC4A0182"
				client     	@961
				supplier   	@945
				line_style 	3
				origin_attachment 	(856, 765)
				terminal_attachment 	(856, 687))
			    (object InheritTreeView "" @986
				location   	(1703, 1290)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@943
				vertices   	(list Points
				    (1703, 1290)
				    (1703, 1008)))
			    (object InheritView "" @987
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A26036D"
				client     	@944
				supplier   	@943
				line_style 	3
				origin_attachment 	(1503, 1344)
				terminal_attachment 	(1503, 1290)
				drawSupplier 	@986)
			    (object InheritView "" @988
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A2C0307"
				client     	@939
				supplier   	@943
				line_style 	3
				origin_attachment 	(2093, 1347)
				terminal_attachment 	(2093, 1290)
				drawSupplier 	@986)
			    (object InheritView "" @989
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A1302A2"
				client     	@953
				supplier   	@965
				line_style 	3
				origin_attachment 	(1253, 2028)
				terminal_attachment 	(1253, 1856)
				drawSupplier 	@970)))
		    (object ClassDiagram "8. Concrete Containment"
			quid       	"3B6A8097027A"
			title      	"8. Concrete Containment"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDNotationDeclaration" @990
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2672, 992)
				label      	(object ItemLabel
				    Parent_View 	@990
				    location   	(2439, 949)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	466
				    justify    	0
				    label      	"XSDNotationDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66EDAA021C"
				width      	484
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaDirective" @991
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2640, 576)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@991
				    location   	(2431, 533)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	418
				    justify    	0
				    label      	"XSDSchemaDirective")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD8A202A2"
				width      	436
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefine" @992
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2144, 784)
				label      	(object ItemLabel
				    Parent_View 	@992
				    location   	(2013, 741)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	262
				    justify    	0
				    label      	"XSDRedefine")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B688C9B02AD"
				width      	280
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefineContent" @993
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2064, 576)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@993
				    location   	(1854, 533)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	420
				    justify    	0
				    label      	"XSDRedefineContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AE2060172"
				width      	438
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @994
				location   	(1943, 868)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@993
				vertices   	(list Points
				    (1943, 868)
				    (1943, 631)))
			    (object AssociationViewNew "$UNNAMED$164" @995
				location   	(2125, 680)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AE8240051"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$165" @996
					Parent_View 	@995
					location   	(157, 344)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6AE82602AD"
					client     	@995
					supplier   	@992
					line_style 	3
					origin_attachment 	(2125, 680)
					terminal_attachment 	(2125, 729))
				    (object RoleView "contents" @997
					Parent_View 	@995
					location   	(157, 344)
					label      	(object SegLabel @998
					    Parent_View 	@997
					    location   	(2255, 671)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+contents"
					    pctDist    	0.175439
					    height     	130
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6AE82602B7"
					client     	@995
					supplier   	@993
					line_style 	3
					origin_attachment 	(2125, 680)
					terminal_attachment 	(2125, 631)
					label      	(object SegLabel @999
					    Parent_View 	@997
					    location   	(2067, 671)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.175439
					    height     	59
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDTerm" @1000
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(256, 320)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1000
				    location   	(148, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	216
				    justify    	0
				    label      	"XSDTerm")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B683C5E0174"
				width      	234
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @1001
				location   	(272, 465)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1000
				vertices   	(list Points
				    (272, 465)
				    (272, 375)))
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroupDefinition" @1002
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2656, 1168)
				label      	(object ItemLabel
				    Parent_View 	@1002
				    location   	(2372, 1121)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	569
				    justify    	0
				    label      	"XSDModelGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED9A0205"
				width      	587
				height     	118
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroup" @1003
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(256, 576)
				label      	(object ItemLabel
				    Parent_View 	@1003
				    location   	(89, 533)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	334
				    justify    	0
				    label      	"XSDModelGroup")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6834E00291"
				width      	352
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$152" @1004
				location   	(1170, 1356)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6837AC025A"
				roleview_list 	(list RoleViews
				    (object RoleView "modelGroup" @1005
					Parent_View 	@1004
					location   	(866, -20)
					label      	(object SegLabel @1006
					    Parent_View 	@1005
					    location   	(269, 1389)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	252
					    justify    	0
					    label      	"+modelGroup"
					    pctDist    	0.534044
					    height     	33
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6837AD0339"
					client     	@1004
					supplier   	@1003
					vertices   	(list Points
					    (1170, 1356)
					    (206, 1356)
					    (206, 631))
					line_style 	3
					origin_attachment 	(1170, 1356)
					terminal_attachment 	(206, 631)
					label      	(object SegLabel @1007
					    Parent_View 	@1005
					    location   	(226, 1322)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.559146
					    height     	35
					    orientation 	1))
				    (object RoleView "$UNNAMED$153" @1008
					Parent_View 	@1004
					location   	(866, -20)
					label      	(object SegLabel @1009
					    Parent_View 	@1008
					    location   	(2521, 1398)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6837AD0338"
					client     	@1004
					supplier   	@1002
					vertices   	(list Points
					    (1170, 1356)
					    (2731, 1356)
					    (2731, 1227))
					line_style 	3
					origin_attachment 	(1170, 1356)
					terminal_attachment 	(2731, 1227))))
			    (object ClassView "Class" "Logical View::xsd::XSDParticle" @1010
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(160, 1696)
				label      	(object ItemLabel
				    Parent_View 	@1010
				    location   	(35, 1653)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	250
				    justify    	0
				    label      	"XSDParticle")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BBD01F7"
				width      	268
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$146" @1011
				location   	(122, 1136)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6BCEB102F8"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$147" @1012
					Parent_View 	@1011
					location   	(-630, -256)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6BCEB6001B"
					client     	@1011
					supplier   	@1003
					line_style 	3
					origin_attachment 	(122, 1136)
					terminal_attachment 	(122, 631))
				    (object RoleView "contents" @1013
					Parent_View 	@1011
					location   	(-630, -256)
					label      	(object SegLabel @1014
					    Parent_View 	@1013
					    location   	(223, 1515)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+contents"
					    pctDist    	0.750495
					    height     	101
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6BCEB60025"
					client     	@1011
					supplier   	@1010
					line_style 	3
					origin_attachment 	(122, 1136)
					terminal_attachment 	(122, 1641)
					label      	(object SegLabel @1015
					    Parent_View 	@1013
					    location   	(180, 1581)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.881188
					    height     	58
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDParticleContent" @1016
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(288, 80)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1016
				    location   	(41, 42)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	495
				    justify    	0
				    label      	"XSDParticleContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6BD22300C6"
				width      	513
				height     	100
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$158" @1017
				location   	(47, 885)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6B47150119"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$159" @1018
					Parent_View 	@1017
					location   	(-289, 821)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B471A03AB"
					client     	@1017
					supplier   	@1010
					line_style 	3
					origin_attachment 	(47, 885)
					terminal_attachment 	(47, 1641))
				    (object RoleView "content" @1019
					Parent_View 	@1017
					location   	(-289, 821)
					label      	(object SegLabel @1020
					    Parent_View 	@1019
					    location   	(142, 189)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+content"
					    pctDist    	0.921854
					    height     	95
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B471A03B5"
					client     	@1017
					supplier   	@1016
					line_style 	3
					origin_attachment 	(47, 885)
					terminal_attachment 	(47, 130)
					label      	(object SegLabel @1021
					    Parent_View 	@1019
					    location   	(28, 192)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.917881
					    height     	19
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeUse" @1022
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1424, 896)
				label      	(object ItemLabel
				    Parent_View 	@1022
				    location   	(1252, 849)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	345
				    justify    	0
				    label      	"XSDAttributeUse")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B68354601A8"
				width      	363
				height     	119
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeDeclaration" @1023
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1408, 1168)
				label      	(object ItemLabel
				    Parent_View 	@1023
				    location   	(1175, 1125)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	466
				    justify    	0
				    label      	"XSDAttributeDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED2E0192"
				width      	484
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$88" @1024
				location   	(1319, 1034)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6F1DE9018A"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$89" @1025
					Parent_View 	@1024
					location   	(-57, -102)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6F1DEA036C"
					client     	@1024
					supplier   	@1022
					line_style 	3
					origin_attachment 	(1319, 1034)
					terminal_attachment 	(1319, 955))
				    (object RoleView "content" @1026
					Parent_View 	@1024
					location   	(-57, -102)
					label      	(object SegLabel @1027
					    Parent_View 	@1026
					    location   	(1439, 1039)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+content"
					    pctDist    	0.073171
					    height     	120
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6F1DEA0380"
					client     	@1024
					supplier   	@1023
					line_style 	3
					origin_attachment 	(1319, 1034)
					terminal_attachment 	(1319, 1113)
					label      	(object SegLabel @1028
					    Parent_View 	@1026
					    location   	(1279, 1031)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.040816
					    height     	41
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::xsd::XSDConstrainingFacet" @1029
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2080, 1696)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1029
				    location   	(1855, 1653)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	450
				    justify    	0
				    label      	"XSDConstrainingFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C6B340093"
				width      	468
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @1030
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1280, 1696)
				label      	(object ItemLabel
				    Parent_View 	@1030
				    location   	(1035, 1653)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	490
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				width      	508
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$184" @1031
				location   	(1351, 1840)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D5CA50112"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$185" @1032
					Parent_View 	@1031
					location   	(-297, 224)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D5CA703B4"
					client     	@1031
					supplier   	@1030
					vertices   	(list Points
					    (1351, 1840)
					    (1294, 1840)
					    (1294, 1751))
					line_style 	3
					origin_attachment 	(1351, 1840)
					terminal_attachment 	(1294, 1751))
				    (object RoleView "contents" @1033
					Parent_View 	@1031
					location   	(-297, 224)
					label      	(object SegLabel @1034
					    Parent_View 	@1033
					    location   	(1517, 1806)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+contents"
					    pctDist    	0.632653
					    height     	108
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D5CA703C8"
					client     	@1031
					supplier   	@1030
					vertices   	(list Points
					    (1351, 1840)
					    (1409, 1840)
					    (1409, 1751))
					line_style 	3
					origin_attachment 	(1351, 1840)
					terminal_attachment 	(1409, 1751)
					label      	(object SegLabel @1035
					    Parent_View 	@1033
					    location   	(1361, 1801)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.072848
					    height     	40
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$68" @1036
				location   	(1190, 1432)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6890D6006F"
				roleview_list 	(list RoleViews
				    (object RoleView "anonymousTypeDefinition" @1037
					Parent_View 	@1036
					location   	(774, -1832)
					label      	(object SegLabel @1038
					    Parent_View 	@1037
					    location   	(1462, 1525)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	492
					    justify    	0
					    label      	"+anonymousTypeDefinition"
					    pctDist    	0.444976
					    height     	272
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6890D60318"
					client     	@1036
					supplier   	@1030
					line_style 	3
					origin_attachment 	(1190, 1432)
					terminal_attachment 	(1190, 1641)
					label      	(object SegLabel @1039
					    Parent_View 	@1037
					    location   	(1143, 1527)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.454545
					    height     	47
					    orientation 	1))
				    (object RoleView "$UNNAMED$69" @1040
					Parent_View 	@1036
					location   	(774, -1832)
					label      	(object SegLabel @1041
					    Parent_View 	@1040
					    location   	(1149, 1266)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6890D6030E"
					client     	@1036
					supplier   	@1023
					line_style 	3
					origin_attachment 	(1190, 1432)
					terminal_attachment 	(1190, 1223))))
			    (object AssociationViewNew "$UNNAMED$186" @1042
				location   	(1690, 1684)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6C35AD0374"
				roleview_list 	(list RoleViews
				    (object RoleView "facetContents" @1043
					Parent_View 	@1042
					location   	(-326, -12)
					label      	(object SegLabel @1044
					    Parent_View 	@1043
					    location   	(1695, 1731)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+facetContents"
					    pctDist    	0.032051
					    height     	47
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6C35AF0010"
					client     	@1042
					supplier   	@1029
					line_style 	3
					origin_attachment 	(1690, 1684)
					terminal_attachment 	(1846, 1684)
					label      	(object SegLabel @1045
					    Parent_View 	@1043
					    location   	(1756, 1644)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	94
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.420732
					    height     	41
					    orientation 	0))
				    (object RoleView "$UNNAMED$187" @1046
					Parent_View 	@1042
					location   	(-326, -12)
					label      	(object SegLabel @1047
					    Parent_View 	@1046
					    location   	(1566, 1643)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6C35AF0006"
					client     	@1042
					supplier   	@1030
					line_style 	3
					origin_attachment 	(1690, 1684)
					terminal_attachment 	(1534, 1684))))
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaCompositor" @1048
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2624, 784)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1048
				    location   	(2388, 741)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	472
				    justify    	0
				    label      	"XSDSchemaCompositor")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3C21DB4102AE"
				width      	490
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaContent" @1049
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1312, 320)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1049
				    location   	(1108, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	408
				    justify    	0
				    label      	"XSDSchemaContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B688CB800BA"
				width      	426
				height     	110
				annotation 	8)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @1050
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(688, 320)
				label      	(object ItemLabel
				    Parent_View 	@1050
				    location   	(557, 277)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	262
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	280
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$166" @1051
				location   	(963, 319)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B688E6B003D"
				roleview_list 	(list RoleViews
				    (object RoleView "contents" @1052
					Parent_View 	@1051
					location   	(595, -17)
					label      	(object SegLabel @1053
					    Parent_View 	@1052
					    location   	(974, 361)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+contents"
					    pctDist    	0.081081
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B688E6C0111"
					client     	@1051
					supplier   	@1049
					line_style 	3
					origin_attachment 	(963, 319)
					terminal_attachment 	(1099, 319)
					label      	(object SegLabel @1054
					    Parent_View 	@1052
					    location   	(1016, 290)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.396396
					    height     	30
					    orientation 	0))
				    (object RoleView "$UNNAMED$167" @1055
					Parent_View 	@1051
					location   	(595, -17)
					label      	(object SegLabel @1056
					    Parent_View 	@1055
					    location   	(855, 361)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B688E6C0107"
					client     	@1051
					supplier   	@1050
					line_style 	3
					origin_attachment 	(963, 319)
					terminal_attachment 	(828, 319))))
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @1057
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2160, 992)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1057
				    location   	(1974, 949)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	372
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B66ECD302A9"
				width      	390
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @1058
				location   	(2322, 1593)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1057
				vertices   	(list Points
				    (2322, 1593)
				    (2322, 1047)))
			    (object InheritView "" @1059
				stereotype 	(object SegLabel @1060
				    Parent_View 	@1059
				    location   	(2146, 905)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	225
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.460000
				    height     	5
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B6AE2F5013A"
				client     	@1057
				supplier   	@993
				line_style 	3
				origin_attachment 	(2150, 937)
				terminal_attachment 	(2150, 868)
				drawSupplier 	@994)
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @1061
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(832, 576)
				label      	(object ItemLabel
				    Parent_View 	@1061
				    location   	(510, 532)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	644
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				width      	662
				height     	112
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$112" @1062
				location   	(1498, 1431)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B68911401AF"
				roleview_list 	(list RoleViews
				    (object RoleView "anonymousTypeDefinition" @1063
					Parent_View 	@1062
					location   	(1038, -1810)
					label      	(object SegLabel @1064
					    Parent_View 	@1063
					    location   	(2027, 1472)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	492
					    justify    	0
					    label      	"+anonymousTypeDefinition"
					    pctDist    	0.454389
					    height     	41
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6891150017"
					client     	@1062
					supplier   	@1057
					vertices   	(list Points
					    (1498, 1431)
					    (2281, 1431)
					    (2281, 1047))
					line_style 	3
					origin_attachment 	(1498, 1431)
					terminal_attachment 	(2281, 1047)
					label      	(object SegLabel @1065
					    Parent_View 	@1063
					    location   	(2204, 1397)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.605419
					    height     	35
					    orientation 	0))
				    (object RoleView "$UNNAMED$113" @1066
					Parent_View 	@1062
					location   	(1038, -1810)
					label      	(object SegLabel @1067
					    Parent_View 	@1066
					    location   	(1090, 866)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6891150016"
					client     	@1062
					supplier   	@1061
					vertices   	(list Points
					    (1498, 1431)
					    (1131, 1431)
					    (1131, 632))
					line_style 	3
					origin_attachment 	(1498, 1431)
					terminal_attachment 	(1131, 632))))
			    (object ClassView "Class" "Logical View::xsd::XSDXPathDefinition" @1068
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(848, 1168)
				label      	(object ItemLabel
				    Parent_View 	@1068
				    location   	(655, 1125)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	386
				    justify    	0
				    label      	"XSDXPathDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6D83BB0355"
				width      	404
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDIdentityConstraintDefinition" @1069
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(800, 896)
				label      	(object ItemLabel
				    Parent_View 	@1069
				    location   	(505, 853)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	590
				    justify    	0
				    label      	"XSDIdentityConstraintDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B2603A2"
				width      	608
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$116" @1070
				location   	(534, 736)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6833EF0160"
				roleview_list 	(list RoleViews
				    (object RoleView "identityConstraintDefinitions" @1071
					Parent_View 	@1070
					location   	(86, -2144)
					label      	(object SegLabel @1072
					    Parent_View 	@1071
					    location   	(820, 748)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	550
					    justify    	0
					    label      	"+identityConstraintDefinitions"
					    pctDist    	0.111111
					    height     	286
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6833F00299"
					client     	@1070
					supplier   	@1069
					line_style 	3
					origin_attachment 	(534, 736)
					terminal_attachment 	(534, 841)
					label      	(object SegLabel @1073
					    Parent_View 	@1071
					    location   	(595, 807)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.675926
					    height     	61
					    orientation 	0))
				    (object RoleView "$UNNAMED$117" @1074
					Parent_View 	@1070
					location   	(86, -2144)
					label      	(object SegLabel @1075
					    Parent_View 	@1074
					    location   	(576, 653)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6833F00298"
					client     	@1070
					supplier   	@1061
					line_style 	3
					origin_attachment 	(534, 736)
					terminal_attachment 	(534, 632))))
			    (object AssociationViewNew "$UNNAMED$136" @1076
				location   	(900, 1032)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D8D3D003E"
				roleview_list 	(list RoleViews
				    (object RoleView "selector" @1077
					Parent_View 	@1076
					location   	(84, 120)
					label      	(object SegLabel @1078
					    Parent_View 	@1077
					    location   	(1013, 1042)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+selector"
					    pctDist    	0.123288
					    height     	113
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D3E0234"
					client     	@1076
					supplier   	@1068
					line_style 	3
					origin_attachment 	(900, 1032)
					terminal_attachment 	(900, 1113)
					label      	(object SegLabel @1079
					    Parent_View 	@1077
					    location   	(859, 1040)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.095890
					    height     	42
					    orientation 	1))
				    (object RoleView "$UNNAMED$137" @1080
					Parent_View 	@1076
					location   	(84, 120)
					label      	(object SegLabel @1081
					    Parent_View 	@1080
					    location   	(859, 968)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D3E022A"
					client     	@1076
					supplier   	@1069
					line_style 	3
					origin_attachment 	(900, 1032)
					terminal_attachment 	(900, 951))))
			    (object AssociationViewNew "$UNNAMED$138" @1082
				location   	(700, 1032)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6D8D330025"
				roleview_list 	(list RoleViews
				    (object RoleView "fields" @1083
					Parent_View 	@1082
					location   	(-116, 120)
					label      	(object SegLabel @1084
					    Parent_View 	@1083
					    location   	(616, 1036)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	120
					    justify    	0
					    label      	"+fields"
					    pctDist    	0.054795
					    height     	85
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D330379"
					client     	@1082
					supplier   	@1068
					line_style 	3
					origin_attachment 	(700, 1032)
					terminal_attachment 	(700, 1113)
					label      	(object SegLabel @1085
					    Parent_View 	@1083
					    location   	(771, 1042)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1..*"
					    pctDist    	0.123077
					    height     	71
					    orientation 	0))
				    (object RoleView "$UNNAMED$139" @1086
					Parent_View 	@1082
					location   	(-116, 120)
					label      	(object SegLabel @1087
					    Parent_View 	@1086
					    location   	(659, 968)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6D8D330365"
					client     	@1082
					supplier   	@1069
					line_style 	3
					origin_attachment 	(700, 1032)
					terminal_attachment 	(700, 951))))
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeContent" @1088
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(752, 1440)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1088
				    location   	(500, 1397)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	504
				    justify    	0
				    label      	"XSDComplexTypeContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B683BA00196"
				width      	522
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @1089
				location   	(550, 1590)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1088
				vertices   	(list Points
				    (550, 1590)
				    (550, 1495)))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupContent" @1090
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1504, 576)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1090
				    location   	(1240, 533)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	528
				    justify    	0
				    label      	"XSDAttributeGroupContent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6940200089"
				width      	546
				height     	110
				annotation 	8)
			    (object InheritTreeView "" @1091
				location   	(1406, 765)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1090
				vertices   	(list Points
				    (1406, 765)
				    (1406, 631)))
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @1092
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2656, 1696)
				label      	(object ItemLabel
				    Parent_View 	@1092
				    location   	(2393, 1653)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	526
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				width      	544
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$94" @1093
				location   	(1614, 1868)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6FDDD70113"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$95" @1094
					Parent_View 	@1093
					location   	(526, 476)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6FDDDA026B"
					client     	@1093
					supplier   	@1092
					vertices   	(list Points
					    (1614, 1868)
					    (2500, 1868)
					    (2500, 1751))
					line_style 	3
					origin_attachment 	(1614, 1868)
					terminal_attachment 	(2500, 1751))
				    (object RoleView "content" @1095
					Parent_View 	@1093
					location   	(526, 476)
					label      	(object SegLabel @1096
					    Parent_View 	@1095
					    location   	(896, 1787)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	168
					    justify    	0
					    label      	"+content"
					    pctDist    	0.709870
					    height     	89
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6FDDDA0275"
					client     	@1093
					supplier   	@1088
					vertices   	(list Points
					    (1614, 1868)
					    (984, 1868)
					    (984, 1495))
					line_style 	3
					origin_attachment 	(1614, 1868)
					terminal_attachment 	(984, 1495)
					label      	(object SegLabel @1097
					    Parent_View 	@1095
					    location   	(1042, 1824)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	72
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.571286
					    height     	45
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$100" @1098
				location   	(2927, 387)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B698E360386"
				roleview_list 	(list RoleViews
				    (object RoleView "attributeContents" @1099
					Parent_View 	@1098
					location   	(2463, -3757)
					label      	(object SegLabel @1100
					    Parent_View 	@1099
					    location   	(1915, 357)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	336
					    justify    	0
					    label      	"+attributeContents"
					    pctDist    	0.773060
					    height     	31
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B698E38007C"
					client     	@1098
					supplier   	@1090
					vertices   	(list Points
					    (2927, 387)
					    (1750, 387)
					    (1750, 521))
					line_style 	3
					origin_attachment 	(2927, 387)
					terminal_attachment 	(1750, 521)
					label      	(object SegLabel @1101
					    Parent_View 	@1099
					    location   	(1804, 425)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.857247
					    height     	38
					    orientation 	0))
				    (object RoleView "$UNNAMED$101" @1102
					Parent_View 	@1098
					location   	(2463, -3757)
					label      	(object SegLabel @1103
					    Parent_View 	@1102
					    location   	(2946, 1448)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B698E380072"
					client     	@1098
					supplier   	@1092
					vertices   	(list Points
					    (2927, 387)
					    (2987, 387)
					    (2987, 1671)
					    (2928, 1671))
					line_style 	3
					origin_attachment 	(2927, 387)
					terminal_attachment 	(2928, 1671))))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupDefinition" @1104
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1968, 1168)
				label      	(object ItemLabel
				    Parent_View 	@1104
				    location   	(1699, 1125)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	538
				    justify    	0
				    label      	"XSDAttributeGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED840290"
				width      	556
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$76" @1105
				location   	(1750, 872)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69404E0067"
				roleview_list 	(list RoleViews
				    (object RoleView "contents" @1106
					Parent_View 	@1105
					location   	(1462, -2392)
					label      	(object SegLabel @1107
					    Parent_View 	@1106
					    location   	(1640, 691)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+contents"
					    pctDist    	0.751037
					    height     	110
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B69405002A5"
					client     	@1105
					supplier   	@1090
					line_style 	3
					origin_attachment 	(1750, 872)
					terminal_attachment 	(1750, 631)
					label      	(object SegLabel @1108
					    Parent_View 	@1106
					    location   	(1814, 695)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.734440
					    height     	64
					    orientation 	1))
				    (object RoleView "$UNNAMED$77" @1109
					Parent_View 	@1105
					location   	(1462, -2392)
					label      	(object SegLabel @1110
					    Parent_View 	@1109
					    location   	(1709, 1065)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B694050029B"
					client     	@1105
					supplier   	@1104
					line_style 	3
					origin_attachment 	(1750, 872)
					terminal_attachment 	(1750, 1113))))
			    (object ClassView "Class" "Logical View::xsd::XSDWildcard" @1111
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(416, 1168)
				label      	(object ItemLabel
				    Parent_View 	@1111
				    location   	(279, 1125)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	274
				    justify    	0
				    label      	"XSDWildcard")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6838370031"
				width      	292
				height     	110
				annotation 	8)
			    (object AssociationViewNew "$UNNAMED$208" @1112
				location   	(1252, 1896)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BEBDC870247"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$209" @1113
					Parent_View 	@1112
					location   	(708, 1288)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BEBDC8C02F9"
					client     	@1112
					supplier   	@1092
					vertices   	(list Points
					    (1252, 1896)
					    (2603, 1896)
					    (2603, 1751))
					line_style 	3
					origin_attachment 	(1252, 1896)
					terminal_attachment 	(2603, 1751))
				    (object RoleView "attributeWildcardContent" @1114
					Parent_View 	@1112
					location   	(708, 1288)
					label      	(object SegLabel @1115
					    Parent_View 	@1114
					    location   	(682, 1858)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	480
					    justify    	0
					    label      	"+attributeWildcardContent"
					    pctDist    	0.381142
					    height     	39
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BEBDC8C0303"
					client     	@1112
					supplier   	@1111
					vertices   	(list Points
					    (1252, 1896)
					    (428, 1896)
					    (428, 1223))
					line_style 	3
					origin_attachment 	(1252, 1896)
					terminal_attachment 	(428, 1223)
					label      	(object SegLabel @1116
					    Parent_View 	@1114
					    location   	(382, 1860)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.575033
					    height     	47
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$80" @1117
				location   	(1199, 1321)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C275D320220"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$81" @1118
					Parent_View 	@1117
					location   	(655, 713)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C275D3C010C"
					client     	@1117
					supplier   	@1104
					vertices   	(list Points
					    (1199, 1321)
					    (1897, 1321)
					    (1897, 1223))
					line_style 	3
					origin_attachment 	(1199, 1321)
					terminal_attachment 	(1897, 1223))
				    (object RoleView "attributeWildcardContent" @1119
					Parent_View 	@1117
					location   	(655, 713)
					label      	(object SegLabel @1120
					    Parent_View 	@1119
					    location   	(857, 1279)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	480
					    justify    	0
					    label      	"+attributeWildcardContent"
					    pctDist    	0.429569
					    height     	43
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C275D3C010D"
					client     	@1117
					supplier   	@1111
					vertices   	(list Points
					    (1199, 1321)
					    (500, 1321)
					    (500, 1223))
					line_style 	3
					origin_attachment 	(1199, 1321)
					terminal_attachment 	(500, 1223)
					label      	(object SegLabel @1121
					    Parent_View 	@1119
					    location   	(576, 1279)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.782305
					    height     	43
					    orientation 	1))))
			    (object InheritView "" @1122
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0D01901F1"
				client     	@1092
				supplier   	@1057
				line_style 	3
				origin_attachment 	(2606, 1641)
				terminal_attachment 	(2606, 1593)
				drawSupplier 	@1058)
			    (object InheritView "" @1123
				stereotype 	(object SegLabel @1124
				    Parent_View 	@1123
				    location   	(759, 495)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	243
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.446429
				    height     	6
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B685F17002E"
				client     	@1061
				supplier   	@1000
				line_style 	3
				origin_attachment 	(753, 520)
				terminal_attachment 	(753, 465)
				drawSupplier 	@1001)
			    (object InheritView "" @1125
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A1302A2"
				client     	@1030
				supplier   	@1057
				line_style 	3
				origin_attachment 	(1409, 1641)
				terminal_attachment 	(1409, 1593)
				drawSupplier 	@1058)
			    (object InheritView "" @1126
				stereotype 	(object SegLabel @1127
				    Parent_View 	@1126
				    location   	(759, 1591)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	219
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.980392
				    height     	385
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B685F55032B"
				client     	@1030
				supplier   	@1088
				line_style 	3
				origin_attachment 	(1144, 1641)
				terminal_attachment 	(1144, 1590)
				drawSupplier 	@1089)
			    (object InheritView "" @1128
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A640279"
				client     	@1003
				supplier   	@1000
				line_style 	3
				origin_attachment 	(166, 521)
				terminal_attachment 	(166, 465)
				drawSupplier 	@1001)
			    (object InheritTreeView "" @1129
				location   	(431, 222)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1016
				vertices   	(list Points
				    (431, 222)
				    (431, 130)))
			    (object InheritView "" @1130
				stereotype 	(object SegLabel @1131
				    Parent_View 	@1130
				    location   	(361, 224)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	237
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.976744
				    height     	86
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B6BD2440069"
				client     	@1000
				supplier   	@1016
				line_style 	3
				origin_attachment 	(275, 265)
				terminal_attachment 	(275, 222)
				drawSupplier 	@1129)
			    (object InheritTreeView "" @1132
				location   	(1309, 465)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1049
				vertices   	(list Points
				    (1309, 465)
				    (1309, 375)))
			    (object InheritView "" @1133
				stereotype 	(object SegLabel @1134
				    Parent_View 	@1133
				    location   	(941, 495)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	225
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.464286
				    height     	10
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B688E660339"
				client     	@1061
				supplier   	@1049
				line_style 	3
				origin_attachment 	(931, 520)
				terminal_attachment 	(931, 465)
				drawSupplier 	@1132)
			    (object InheritView "" @1135
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6848FC01E7"
				client     	@1010
				supplier   	@1088
				line_style 	3
				origin_attachment 	(250, 1641)
				terminal_attachment 	(250, 1590)
				drawSupplier 	@1089)
			    (object InheritView "" @1136
				stereotype 	(object SegLabel @1137
				    Parent_View 	@1136
				    location   	(1205, 493)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	212
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.958333
				    height     	8
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B688E6103BE"
				client     	@1023
				supplier   	@1049
				line_style 	3
				origin_attachment 	(1197, 1113)
				terminal_attachment 	(1197, 465)
				drawSupplier 	@1132)
			    (object InheritView "" @1138
				stereotype 	(object SegLabel @1139
				    Parent_View 	@1138
				    location   	(1951, 905)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	225
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.848980
				    height     	73
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B6AE2EB02A8"
				client     	@1104
				supplier   	@993
				line_style 	3
				origin_attachment 	(1878, 1113)
				terminal_attachment 	(1878, 868)
				drawSupplier 	@994)
			    (object InheritView "" @1140
				stereotype 	(object SegLabel @1141
				    Parent_View 	@1140
				    location   	(1642, 807)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	187
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.879310
				    height     	61
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B69403A0221"
				client     	@1104
				supplier   	@1090
				line_style 	3
				origin_attachment 	(1703, 1113)
				terminal_attachment 	(1703, 765)
				drawSupplier 	@1091)
			    (object InheritView "" @1142
				stereotype 	(object SegLabel @1143
				    Parent_View 	@1142
				    location   	(1354, 801)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	225
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.500000
				    height     	70
				    orientation 	1)
				line_color 	3342489
				quidu      	"3B72D737038F"
				client     	@1022
				supplier   	@1090
				line_style 	3
				origin_attachment 	(1284, 837)
				terminal_attachment 	(1284, 765)
				drawSupplier 	@1091)
			    (object InheritView "" @1144
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DB640240"
				client     	@992
				supplier   	@1048
				line_style 	3
				origin_attachment 	(2284, 762)
				terminal_attachment 	(2379, 762))
			    (object InheritView "" @1145
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AE32102AF"
				client     	@991
				supplier   	@1049
				line_style 	3
				origin_attachment 	(2637, 521)
				terminal_attachment 	(2637, 465)
				drawSupplier 	@1132)
			    (object InheritView "" @1146
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DB560092"
				client     	@1048
				supplier   	@991
				line_style 	3
				origin_attachment 	(2637, 729)
				terminal_attachment 	(2637, 631))
			    (object InheritView "" @1147
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6AE2B301D5"
				client     	@993
				supplier   	@1049
				line_style 	3
				origin_attachment 	(1950, 521)
				terminal_attachment 	(1950, 465)
				drawSupplier 	@1132)
			    (object InheritView "" @1148
				stereotype 	(object SegLabel @1149
				    Parent_View 	@1148
				    location   	(2821, 897)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	181
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.087719
				    height     	76
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B688E4F023C"
				client     	@990
				supplier   	@1049
				line_style 	3
				origin_attachment 	(2896, 937)
				terminal_attachment 	(2896, 465)
				drawSupplier 	@1132)
			    (object InheritView "" @1150
				stereotype 	(object SegLabel @1151
				    Parent_View 	@1150
				    location   	(2313, 904)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	207
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.850622
				    height     	68
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B6AE2E20381"
				client     	@1002
				supplier   	@993
				line_style 	3
				origin_attachment 	(2381, 1109)
				terminal_attachment 	(2381, 868)
				drawSupplier 	@994)
			    (object InheritView "" @1152
				stereotype 	(object SegLabel @1153
				    Parent_View 	@1152
				    location   	(2878, 269)
				    font       	(object Font
					size       	8)
				    anchor     	10
				    anchor_loc 	1
				    nlines     	1
				    max_width  	238
				    justify    	0
				    label      	"<<mixin>>"
				    pctDist    	0.946667
				    height     	66
				    orientation 	0)
				line_color 	3342489
				quidu      	"3B6BD2550385"
				client     	@1002
				supplier   	@1016
				line_style 	3
				origin_attachment 	(2943, 1109)
				terminal_attachment 	(2943, 222)
				drawSupplier 	@1129)
			    (object InheritView "" @1154
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A3A0041"
				client     	@1111
				supplier   	@1000
				line_style 	3
				origin_attachment 	(462, 1113)
				terminal_attachment 	(462, 465)
				drawSupplier 	@1001)))
		    (object ClassDiagram "9. Concrete Schema Composition"
			quid       	"3C25EB7A038C"
			title      	"9. Concrete Schema Composition"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @1155
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(304, 1536)
				label      	(object ItemLabel
				    Parent_View 	@1155
				    location   	(73, 1493)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	462
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				width      	480
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$118" @1156
				location   	(228, 1695)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6B41E60251"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$119" @1157
					Parent_View 	@1156
					location   	(-476, -385)
					label      	(object SegLabel @1158
					    Parent_View 	@1157
					    location   	(217, 1623)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B41EA02F7"
					client     	@1156
					supplier   	@1155
					vertices   	(list Points
					    (228, 1695)
					    (175, 1695)
					    (175, 1591))
					line_style 	3
					origin_attachment 	(228, 1695)
					terminal_attachment 	(175, 1591))
				    (object RoleView "resolvedElementDeclaration" @1159
					Parent_View 	@1156
					location   	(-476, -385)
					label      	(object SegLabel @1160
					    Parent_View 	@1159
					    location   	(329, 1740)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	528
					    justify    	0
					    label      	"+resolvedElementDeclaration"
					    pctDist    	1.924528
					    height     	45
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B41EA030B"
					client     	@1156
					supplier   	@1155
					vertices   	(list Points
					    (228, 1695)
					    (281, 1695)
					    (281, 1591))
					line_style 	3
					origin_attachment 	(228, 1695)
					terminal_attachment 	(281, 1591)
					label      	(object SegLabel @1161
					    Parent_View 	@1159
					    location   	(229, 1646)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.005714
					    height     	50
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroupDefinition" @1162
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1040, 1536)
				label      	(object ItemLabel
				    Parent_View 	@1162
				    location   	(790, 1493)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	500
				    justify    	0
				    label      	"XSDModelGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED9A0205"
				width      	518
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$154" @1163
				location   	(952, 1698)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6B42450398"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$155" @1164
					Parent_View 	@1163
					location   	(-1288, -318)
					label      	(object SegLabel @1165
					    Parent_View 	@1164
					    location   	(860, 1623)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B4249038A"
					client     	@1163
					supplier   	@1162
					vertices   	(list Points
					    (952, 1698)
					    (901, 1698)
					    (901, 1591))
					line_style 	3
					origin_attachment 	(952, 1698)
					terminal_attachment 	(901, 1591))
				    (object RoleView "resolvedModelGroupDefinition" @1166
					Parent_View 	@1163
					location   	(-1288, -318)
					label      	(object SegLabel @1167
					    Parent_View 	@1166
					    location   	(1020, 1739)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	564
					    justify    	0
					    label      	"+resolvedModelGroupDefinition"
					    pctDist    	1.326923
					    height     	41
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B4249039E"
					client     	@1163
					supplier   	@1162
					vertices   	(list Points
					    (952, 1698)
					    (1004, 1698)
					    (1004, 1591))
					line_style 	3
					origin_attachment 	(952, 1698)
					terminal_attachment 	(1004, 1591)
					label      	(object SegLabel @1168
					    Parent_View 	@1166
					    location   	(952, 1649)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.000000
					    height     	50
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaCompositor" @1169
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(656, 992)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1169
				    location   	(420, 949)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	472
				    justify    	0
				    label      	"XSDSchemaCompositor")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3C21DB4102AE"
				width      	490
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchemaDirective" @1170
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(640, 784)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1170
				    location   	(412, 737)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	457
				    justify    	0
				    label      	"XSDSchemaDirective")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD8A202A2"
				width      	475
				height     	118
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @1171
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(640, 416)
				label      	(object ItemLabel
				    Parent_View 	@1171
				    location   	(446, 285)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	388
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	406
				height     	287
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$218" @1172
				location   	(1303, 679)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DD0C03DB"
				roleview_list 	(list RoleViews
				    (object RoleView "incorporatedSchema" @1173
					Parent_View 	@1172
					location   	(-41, -857)
					label      	(object SegLabel @1174
					    Parent_View 	@1173
					    location   	(1059, 381)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+incorporatedSchema"
					    pctDist    	0.700384
					    height     	39
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DD100305"
					client     	@1172
					supplier   	@1171
					vertices   	(list Points
					    (1303, 679)
					    (1303, 419)
					    (843, 419))
					line_style 	3
					origin_attachment 	(1303, 679)
					terminal_attachment 	(843, 419)
					label      	(object SegLabel @1175
					    Parent_View 	@1173
					    location   	(922, 454)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.890746
					    height     	35
					    orientation 	0))
				    (object RoleView "$UNNAMED$219" @1176
					Parent_View 	@1172
					location   	(-41, -857)
					label      	(object SegLabel @1177
					    Parent_View 	@1176
					    location   	(1045, 956)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DD100304"
					client     	@1172
					supplier   	@1169
					vertices   	(list Points
					    (1303, 679)
					    (1303, 997)
					    (901, 997))
					line_style 	3
					origin_attachment 	(1303, 679)
					terminal_attachment 	(901, 997))))
			    (object AssociationViewNew "$UNNAMED$216" @1178
				location   	(1216, 649)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DCC700EC"
				roleview_list 	(list RoleViews
				    (object RoleView "resolvedSchema" @1179
					Parent_View 	@1178
					location   	(336, -1399)
					label      	(object SegLabel @1180
					    Parent_View 	@1179
					    location   	(1038, 500)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	324
					    justify    	0
					    label      	"+resolvedSchema"
					    pctDist    	0.601923
					    height     	35
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DCCE0043"
					client     	@1178
					supplier   	@1171
					vertices   	(list Points
					    (1216, 649)
					    (1216, 534)
					    (843, 534))
					line_style 	3
					origin_attachment 	(1216, 649)
					terminal_attachment 	(843, 534)
					label      	(object SegLabel @1181
					    Parent_View 	@1179
					    location   	(926, 577)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.831643
					    height     	43
					    orientation 	0))
				    (object RoleView "$UNNAMED$217" @1182
					Parent_View 	@1178
					location   	(336, -1399)
					label      	(object SegLabel @1183
					    Parent_View 	@1182
					    location   	(974, 756)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C21DCCE0042"
					client     	@1178
					supplier   	@1170
					vertices   	(list Points
					    (1216, 649)
					    (1216, 797)
					    (877, 797))
					line_style 	3
					origin_attachment 	(1216, 649)
					terminal_attachment 	(877, 797))))
			    (object AssociationViewNew "$UNNAMED$222" @1184
				location   	(662, 642)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C25D3A60131"
				roleview_list 	(list RoleViews
				    (object RoleView "referencingDirectives" @1185
					Parent_View 	@1184
					location   	(-234, 114)
					label      	(object SegLabel @1186
					    Parent_View 	@1185
					    location   	(878, 675)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+referencingDirectives"
					    pctDist    	0.408759
					    height     	216
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25D3A90371"
					client     	@1184
					supplier   	@1170
					line_style 	3
					origin_attachment 	(662, 642)
					terminal_attachment 	(662, 725)
					label      	(object SegLabel @1187
					    Parent_View 	@1185
					    location   	(615, 678)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.430657
					    height     	48
					    orientation 	1))
				    (object RoleView "$UNNAMED$223" @1188
					Parent_View 	@1184
					location   	(-234, 114)
					label      	(object SegLabel @1189
					    Parent_View 	@1188
					    location   	(621, 576)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25D3A90370"
					client     	@1184
					supplier   	@1171
					line_style 	3
					origin_attachment 	(662, 642)
					terminal_attachment 	(662, 559))))
			    (object AssociationViewNew "$UNNAMED$224" @1190
				location   	(75, 188)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C25ECF0005E"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$225" @1191
					Parent_View 	@1190
					location   	(-853, -308)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25ECF4001E"
					client     	@1190
					supplier   	@1171
					vertices   	(list Points
					    (75, 188)
					    (75, 128)
					    (510, 128)
					    (510, 273))
					line_style 	3
					origin_attachment 	(75, 188)
					terminal_attachment 	(510, 273))
				    (object RoleView "rootVersion" @1192
					Parent_View 	@1190
					location   	(-853, -308)
					label      	(object SegLabel @1193
					    Parent_View 	@1192
					    location   	(176, 74)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+rootVersion"
					    pctDist    	-0.593750
					    height     	101
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25ECF40028"
					client     	@1190
					supplier   	@1171
					vertices   	(list Points
					    (75, 188)
					    (75, 380)
					    (437, 380))
					line_style 	3
					origin_attachment 	(75, 188)
					terminal_attachment 	(437, 380)
					label      	(object SegLabel @1194
					    Parent_View 	@1192
					    location   	(368, 328)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.874755
					    height     	53
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$226" @1195
				location   	(1262, 134)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C25ED0B011B"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$227" @1196
					Parent_View 	@1195
					location   	(334, -362)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25ED0F0121"
					client     	@1195
					supplier   	@1171
					vertices   	(list Points
					    (1262, 134)
					    (766, 134)
					    (766, 273))
					line_style 	3
					origin_attachment 	(1262, 134)
					terminal_attachment 	(766, 273))
				    (object RoleView "originalVersion" @1197
					Parent_View 	@1195
					location   	(334, -362)
					label      	(object SegLabel @1198
					    Parent_View 	@1197
					    location   	(1164, 97)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	288
					    justify    	0
					    label      	"+originalVersion"
					    pctDist    	-1.650000
					    height     	38
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25ED0F012B"
					client     	@1195
					supplier   	@1171
					vertices   	(list Points
					    (1262, 134)
					    (1322, 134)
					    (1322, 334)
					    (843, 334))
					line_style 	3
					origin_attachment 	(1262, 134)
					terminal_attachment 	(843, 334)
					label      	(object SegLabel @1199
					    Parent_View 	@1197
					    location   	(919, 279)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.898108
					    height     	56
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$228" @1200
				location   	(126, 656)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C25EEAB001F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$229" @1201
					Parent_View 	@1200
					location   	(-834, 160)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25EEAF010B"
					client     	@1200
					supplier   	@1171
					vertices   	(list Points
					    (126, 656)
					    (513, 656)
					    (513, 559))
					line_style 	3
					origin_attachment 	(126, 656)
					terminal_attachment 	(513, 559))
				    (object RoleView "incorporatedVersions" @1202
					Parent_View 	@1200
					location   	(-834, 160)
					label      	(object SegLabel @1203
					    Parent_View 	@1202
					    location   	(217, 431)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	408
					    justify    	0
					    label      	"+incorporatedVersions"
					    pctDist    	0.643902
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C25EEAF0115"
					client     	@1200
					supplier   	@1171
					vertices   	(list Points
					    (126, 656)
					    (66, 656)
					    (66, 472)
					    (437, 472))
					line_style 	3
					origin_attachment 	(126, 656)
					terminal_attachment 	(437, 472)
					label      	(object SegLabel @1204
					    Parent_View 	@1202
					    location   	(356, 526)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.868468
					    height     	54
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$232" @1205
				location   	(642, 126)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C2784730194"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$233" @1206
					Parent_View 	@1205
					location   	(82, -418)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C27847501F1"
					client     	@1205
					supplier   	@1171
					vertices   	(list Points
					    (642, 126)
					    (588, 126)
					    (588, 273))
					line_style 	3
					origin_attachment 	(642, 126)
					terminal_attachment 	(588, 273))
				    (object RoleView "schemaForSchema" @1207
					Parent_View 	@1205
					location   	(82, -418)
					label      	(object SegLabel @1208
					    Parent_View 	@1207
					    location   	(639, 74)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	384
					    justify    	0
					    label      	"+schemaForSchema"
					    pctDist    	-0.055556
					    height     	53
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C27847501FB"
					client     	@1205
					supplier   	@1171
					vertices   	(list Points
					    (642, 126)
					    (697, 126)
					    (697, 273))
					line_style 	3
					origin_attachment 	(642, 126)
					terminal_attachment 	(697, 273)
					label      	(object SegLabel @1209
					    Parent_View 	@1207
					    location   	(643, 213)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.701863
					    height     	55
					    orientation 	1))))
			    (object InheritView "" @1210
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C21DB560092"
				client     	@1169
				supplier   	@1170
				line_style 	3
				origin_attachment 	(638, 937)
				terminal_attachment 	(638, 843))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeDeclaration" @1211
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(304, 1184)
				label      	(object ItemLabel
				    Parent_View 	@1211
				    location   	(67, 1141)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	474
				    justify    	0
				    label      	"XSDAttributeDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED2E0192"
				width      	492
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$72" @1212
				location   	(234, 1340)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6B426B0194"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$73" @1213
					Parent_View 	@1212
					location   	(-310, -4)
					label      	(object SegLabel @1214
					    Parent_View 	@1213
					    location   	(140, 1271)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B426D0309"
					client     	@1212
					supplier   	@1211
					vertices   	(list Points
					    (234, 1340)
					    (181, 1340)
					    (181, 1239))
					line_style 	3
					origin_attachment 	(234, 1340)
					terminal_attachment 	(181, 1239))
				    (object RoleView "resolvedAttributeDeclaration" @1215
					Parent_View 	@1212
					location   	(-310, -4)
					label      	(object SegLabel @1216
					    Parent_View 	@1215
					    location   	(333, 1389)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	528
					    justify    	0
					    label      	"+resolvedAttributeDeclaration"
					    pctDist    	1.867925
					    height     	49
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B426D0313"
					client     	@1212
					supplier   	@1211
					vertices   	(list Points
					    (234, 1340)
					    (287, 1340)
					    (287, 1239))
					line_style 	3
					origin_attachment 	(234, 1340)
					terminal_attachment 	(287, 1239)
					label      	(object SegLabel @1217
					    Parent_View 	@1215
					    location   	(241, 1295)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.042945
					    height     	46
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @1218
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1760, 144)
				label      	(object ItemLabel
				    Parent_View 	@1218
				    location   	(1517, 101)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	486
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				width      	504
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDFacet" @1219
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1712, 416)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1219
				    location   	(1599, 373)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	226
				    justify    	0
				    label      	"XSDFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C359403D2"
				width      	244
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$306" @1220
				location   	(1668, 280)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3D4BB4AE01CC"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$307" @1221
					Parent_View 	@1220
					location   	(8, -152)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4BB4AF010F"
					client     	@1220
					supplier   	@1218
					line_style 	3
					origin_attachment 	(1668, 280)
					terminal_attachment 	(1668, 199))
				    (object RoleView "syntheticFacets" @1222
					Parent_View 	@1220
					location   	(8, -152)
					label      	(object SegLabel @1223
					    Parent_View 	@1222
					    location   	(1852, 300)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	324
					    justify    	0
					    label      	"+syntheticFacets"
					    pctDist    	0.246154
					    height     	184
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4BB4AF011A"
					client     	@1220
					supplier   	@1219
					line_style 	3
					origin_attachment 	(1668, 280)
					terminal_attachment 	(1668, 361)
					label      	(object SegLabel @1224
					    Parent_View 	@1222
					    location   	(1625, 301)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.276923
					    height     	44
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::xsd::XSDParticle" @1225
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1552, 944)
				label      	(object ItemLabel
				    Parent_View 	@1225
				    location   	(1426, 901)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	252
				    justify    	0
				    label      	"XSDParticle")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BBD01F7"
				width      	270
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @1226
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1776, 640)
				label      	(object ItemLabel
				    Parent_View 	@1226
				    location   	(1515, 597)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	522
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				width      	540
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$308" @1227
				location   	(1508, 792)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3D4BB4D3028E"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$309" @1228
					Parent_View 	@1227
					location   	(-12, -280)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4BB4D402F3"
					client     	@1227
					supplier   	@1226
					line_style 	3
					origin_attachment 	(1508, 792)
					terminal_attachment 	(1508, 695))
				    (object RoleView "syntheticParticle" @1229
					Parent_View 	@1227
					location   	(-12, -280)
					label      	(object SegLabel @1230
					    Parent_View 	@1229
					    location   	(1695, 767)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	336
					    justify    	0
					    label      	"+syntheticParticle"
					    pctDist    	-0.259259
					    height     	187
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4BB4D402FD"
					client     	@1227
					supplier   	@1225
					line_style 	3
					origin_attachment 	(1508, 792)
					terminal_attachment 	(1508, 889)
					label      	(object SegLabel @1231
					    Parent_View 	@1229
					    location   	(1454, 829)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.395062
					    height     	55
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupDefinition" @1232
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1024, 1184)
				label      	(object ItemLabel
				    Parent_View 	@1232
				    location   	(756, 1141)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	536
				    justify    	0
				    label      	"XSDAttributeGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED840290"
				width      	554
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$84" @1233
				location   	(919, 1349)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B6B425E01F9"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$85" @1234
					Parent_View 	@1233
					location   	(-233, -59)
					label      	(object SegLabel @1235
					    Parent_View 	@1234
					    location   	(825, 1273)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B42620046"
					client     	@1233
					supplier   	@1232
					vertices   	(list Points
					    (919, 1349)
					    (866, 1349)
					    (866, 1239))
					line_style 	3
					origin_attachment 	(919, 1349)
					terminal_attachment 	(866, 1239))
				    (object RoleView "resolvedAttributeGroupDefinition" @1236
					Parent_View 	@1233
					location   	(-233, -59)
					label      	(object SegLabel @1237
					    Parent_View 	@1236
					    location   	(993, 1393)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	600
					    justify    	0
					    label      	"+resolvedAttributeGroupDefinition"
					    pctDist    	1.377358
					    height     	44
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3B6B42620050"
					client     	@1233
					supplier   	@1232
					vertices   	(list Points
					    (919, 1349)
					    (973, 1349)
					    (973, 1239))
					line_style 	3
					origin_attachment 	(919, 1349)
					terminal_attachment 	(973, 1239)
					label      	(object SegLabel @1238
					    Parent_View 	@1236
					    location   	(919, 1296)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.014925
					    height     	54
					    orientation 	0))))
			    (object ClassView "Class" "Logical View::xsd::XSDWildcard" @1239
				ShowCompartmentStereotypes 	TRUE
				SuppressAttribute 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1952, 944)
				label      	(object ItemLabel
				    Parent_View 	@1239
				    location   	(1816, 901)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	272
				    justify    	0
				    label      	"XSDWildcard")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6838370031"
				width      	290
				height     	110
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$310" @1240
				location   	(2025, 792)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3D4BB4D901F6"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$311" @1241
					Parent_View 	@1240
					location   	(153, -280)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4BB4DA0284"
					client     	@1240
					supplier   	@1226
					line_style 	3
					origin_attachment 	(2025, 792)
					terminal_attachment 	(2025, 695))
				    (object RoleView "syntheticWildcard" @1242
					Parent_View 	@1240
					location   	(153, -280)
					label      	(object SegLabel @1243
					    Parent_View 	@1242
					    location   	(1826, 838)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	348
					    justify    	0
					    label      	"+syntheticWildcard"
					    pctDist    	0.488095
					    height     	200
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4BB4DA028E"
					client     	@1240
					supplier   	@1239
					line_style 	3
					origin_attachment 	(2025, 792)
					terminal_attachment 	(2025, 889)
					label      	(object SegLabel @1244
					    Parent_View 	@1242
					    location   	(2098, 840)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.506173
					    height     	73
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$312" @1245
				location   	(1754, 1178)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3D4C68FF01BF"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$313" @1246
					Parent_View 	@1245
					location   	(-198, 234)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4C69020317"
					client     	@1245
					supplier   	@1232
					line_style 	3
					origin_attachment 	(1754, 1178)
					terminal_attachment 	(1301, 1178))
				    (object RoleView "syntheticWildcard" @1247
					Parent_View 	@1245
					location   	(-198, 234)
					label      	(object SegLabel @1248
					    Parent_View 	@1247
					    location   	(1828, 1261)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	348
					    justify    	0
					    label      	"+syntheticWildcard"
					    pctDist    	0.163355
					    height     	83
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3D4C69020318"
					client     	@1245
					supplier   	@1239
					vertices   	(list Points
					    (1754, 1178)
					    (2028, 1178)
					    (2028, 999))
					line_style 	3
					origin_attachment 	(1754, 1178)
					terminal_attachment 	(2028, 999)
					label      	(object SegLabel @1249
					    Parent_View 	@1247
					    location   	(2082, 1098)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.783664
					    height     	54
					    orientation 	1))))))
		    (object ClassDiagram "10. Diagnostics"
			quid       	"3BFE5F0803E2"
			title      	"10. Diagnostics"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::DOMNode" @1250
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(400, 1024)
				label      	(object ItemLabel
				    Parent_View 	@1250
				    location   	(66, 990)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	668
				    justify    	0
				    label      	"DOMNode")
				stereotype 	(object ItemLabel
				    Parent_View 	@1250
				    location   	(66, 940)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	668
				    justify    	0
				    label      	"<<datatype>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	14671839
				quidu      	"3BFE64A50117"
				width      	686
				height     	192
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDDiagnosticSeverity" @1251
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1040, 656)
				label      	(object ItemLabel
				    Parent_View 	@1251
				    location   	(818, 547)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	444
				    justify    	0
				    label      	"XSDDiagnosticSeverity")
				stereotype 	(object ItemLabel
				    Parent_View 	@1251
				    location   	(818, 497)
				    fill_color 	13434879
				    anchor     	10
				    nlines     	1
				    max_width  	444
				    justify    	0
				    label      	"<<enumeration>>")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	8432127
				quidu      	"3BFE68A7032F"
				width      	462
				height     	342
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSchema" @1252
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(192, 112)
				label      	(object ItemLabel
				    Parent_View 	@1252
				    location   	(59, 60)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	266
				    justify    	0
				    label      	"XSDSchema")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"374B182500BB"
				width      	284
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDConcreteComponent" @1253
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(896, 112)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1253
				    location   	(540, 62)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	713
				    justify    	0
				    label      	"XSDConcreteComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD7B40065"
				width      	731
				height     	125
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDDiagnostic" @1254
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(384, 608)
				label      	(object ItemLabel
				    Parent_View 	@1254
				    location   	(64, 402)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	640
				    justify    	0
				    label      	"XSDDiagnostic")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3BFE5F910046"
				width      	658
				height     	436
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$214" @1255
				location   	(144, 283)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BFE6431035F"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$215" @1256
					Parent_View 	@1255
					location   	(-1088, -661)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFE643201C6"
					client     	@1255
					supplier   	@1252
					line_style 	3
					origin_attachment 	(144, 283)
					terminal_attachment 	(144, 176))
				    (object RoleView "allDiagnostics" @1257
					Parent_View 	@1255
					location   	(-1088, -661)
					label      	(object SegLabel @1258
					    Parent_View 	@1257
					    location   	(309, 330)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+allDiagnostics"
					    pctDist    	0.448598
					    height     	165
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFE643201C7"
					client     	@1255
					supplier   	@1254
					line_style 	3
					origin_attachment 	(144, 283)
					terminal_attachment 	(144, 390)
					label      	(object SegLabel @1259
					    Parent_View 	@1257
					    location   	(96, 327)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.420561
					    height     	49
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$210" @1260
				location   	(1028, 440)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BFE622703CD"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$211" @1261
					Parent_View 	@1260
					location   	(-396, -72)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFE622B0061"
					client     	@1260
					supplier   	@1254
					line_style 	3
					origin_attachment 	(1028, 440)
					terminal_attachment 	(713, 440))
				    (object RoleView "components" @1262
					Parent_View 	@1260
					location   	(-396, -72)
					label      	(object SegLabel @1263
					    Parent_View 	@1262
					    location   	(938, 230)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	252
					    justify    	0
					    label      	"+components"
					    pctDist    	0.829181
					    height     	151
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFE622B006C"
					client     	@1260
					supplier   	@1253
					vertices   	(list Points
					    (1028, 440)
					    (1088, 440)
					    (1088, 174))
					line_style 	3
					origin_attachment 	(1028, 440)
					terminal_attachment 	(1088, 174)
					label      	(object SegLabel @1264
					    Parent_View 	@1262
					    location   	(1143, 232)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"1..*"
					    pctDist    	0.823848
					    height     	55
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$212" @1265
				location   	(688, 282)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BFE62690165"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$213" @1266
					Parent_View 	@1265
					location   	(160, -278)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFE626A0026"
					client     	@1265
					supplier   	@1253
					line_style 	3
					origin_attachment 	(688, 282)
					terminal_attachment 	(688, 174))
				    (object RoleView "diagnostics" @1267
					Parent_View 	@1265
					location   	(160, -278)
					label      	(object SegLabel @1268
					    Parent_View 	@1267
					    location   	(822, 330)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+diagnostics"
					    pctDist    	0.452632
					    height     	134
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3BFE626A0027"
					client     	@1265
					supplier   	@1254
					line_style 	3
					origin_attachment 	(688, 282)
					terminal_attachment 	(688, 390)
					label      	(object SegLabel @1269
					    Parent_View 	@1267
					    location   	(645, 335)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	70
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.494737
					    height     	44
					    orientation 	1))))
			    (object InheritView "" @1270
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3D4C0F4C01A1"
				client     	@1254
				supplier   	@1253
				line_style 	3
				origin_attachment 	(575, 390)
				terminal_attachment 	(575, 174))))
		    (object ClassDiagram "11. Supplemental"
			quid       	"3C287E49019B"
			title      	"11. Supplemental"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeGroupDefinition" @1271
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(464, 816)
				label      	(object ItemLabel
				    Parent_View 	@1271
				    location   	(47, 760)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	834
				    justify    	0
				    label      	"XSDAttributeGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED840290"
				width      	852
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDAttributeDeclaration" @1272
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(2112, 880)
				label      	(object ItemLabel
				    Parent_View 	@1272
				    location   	(1731, 824)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	762
				    justify    	0
				    label      	"XSDAttributeDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED2E0192"
				width      	780
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDConcreteComponent" @1273
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(288, 112)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1273
				    location   	(48, 60)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	480
				    justify    	0
				    label      	"XSDConcreteComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6AD7B40065"
				width      	498
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDDiagnostic" @1274
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2384, 112)
				label      	(object ItemLabel
				    Parent_View 	@1274
				    location   	(2236, 60)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	296
				    justify    	0
				    label      	"XSDDiagnostic")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3BFE5F910046"
				width      	314
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$236" @1275
				location   	(1382, 84)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C2882C50137"
				roleview_list 	(list RoleViews
				    (object RoleView "primaryComponent" @1276
					Parent_View 	@1275
					location   	(-250, -508)
					label      	(object SegLabel @1277
					    Parent_View 	@1276
					    location   	(756, 116)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+primaryComponent"
					    pctDist    	0.740828
					    height     	32
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C2882C70113"
					client     	@1275
					supplier   	@1273
					line_style 	3
					origin_attachment 	(1382, 84)
					terminal_attachment 	(537, 84)
					label      	(object SegLabel @1278
					    Parent_View 	@1276
					    location   	(624, 55)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.897260
					    height     	30
					    orientation 	1))
				    (object RoleView "$UNNAMED$237" @1279
					Parent_View 	@1275
					location   	(-250, -508)
					label      	(object SegLabel @1280
					    Parent_View 	@1279
					    location   	(2058, 126)
					    hidden     	TRUE
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	""
					    pctDist    	0.800000
					    height     	42
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C2882C70112"
					client     	@1275
					supplier   	@1274
					line_style 	3
					origin_attachment 	(1382, 84)
					terminal_attachment 	(2227, 84))))
			    (object ClassView "Class" "Logical View::xsd::XSDElementDeclaration" @1281
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2160, 688)
				label      	(object ItemLabel
				    Parent_View 	@1281
				    location   	(1778, 607)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	764
				    justify    	0
				    label      	"XSDElementDeclaration")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED580214"
				compartment 	(object Compartment
				    Parent_View 	@1281
				    location   	(1778, 667)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	722
				    compartmentItems 	(list Compartment
					"+ elementDeclarationReference : boolean"
					"+ circular : boolean"))
				width      	782
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDFacet" @1282
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2320, 1072)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1282
				    location   	(2100, 991)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	440
				    justify    	0
				    label      	"XSDFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6C359403D2"
				compartment 	(object Compartment
				    Parent_View 	@1282
				    location   	(2100, 1051)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	423
				    compartmentItems 	(list Compartment
					"+ facetName : String"
					"+ effectiveValue : Value"))
				width      	458
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDModelGroupDefinition" @1283
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(448, 624)
				label      	(object ItemLabel
				    Parent_View 	@1283
				    location   	(47, 568)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	802
				    justify    	0
				    label      	"XSDModelGroupDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B66ED9A0205"
				compartment 	(object Compartment
				    Parent_View 	@1283
				    location   	(47, 628)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	1
				    max_width  	769
				    compartmentItems 	(list Compartment
					"+ modelGroupDefinitionReference : boolean"))
				width      	820
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDNamedComponent" @1284
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1232, 288)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1284
				    location   	(1005, 157)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	454
				    justify    	0
				    label      	"XSDNamedComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B6846D303A4"
				compartment 	(object Compartment
				    Parent_View 	@1284
				    location   	(1005, 217)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	4
				    max_width  	356
				    compartmentItems 	(list Compartment
					"+ aliasName : String"
					"+ uRI : String"
					"+ aliasURI : String"
					"+ qName : String"))
				width      	472
				height     	286
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDRedefinableComponent" @1285
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(320, 352)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1285
				    location   	(48, 296)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	544
				    justify    	0
				    label      	"XSDRedefinableComponent")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B7FCA8B020B"
				width      	562
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @1286
				location   	(320, 510)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1285
				vertices   	(list Points
				    (320, 510)
				    (320, 420)))
			    (object InheritView "" @1287
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAC40090"
				client     	@1283
				supplier   	@1285
				line_style 	3
				origin_attachment 	(81, 556)
				terminal_attachment 	(81, 510)
				drawSupplier 	@1286)
			    (object InheritView "" @1288
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAC800D2"
				client     	@1271
				supplier   	@1285
				line_style 	3
				origin_attachment 	(877, 748)
				terminal_attachment 	(877, 510)
				drawSupplier 	@1286)
			    (object ClassView "Class" "Logical View::xsd::XSDMaxInclusiveFacet" @1289
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2320, 1808)
				label      	(object ItemLabel
				    Parent_View 	@1289
				    location   	(2101, 1761)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	438
				    justify    	0
				    label      	"XSDMaxInclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C787D00DA"
				width      	456
				height     	119
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMinInclusiveFacet" @1290
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(272, 1776)
				label      	(object ItemLabel
				    Parent_View 	@1290
				    location   	(35, 1729)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	475
				    justify    	0
				    label      	"XSDMinInclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C788702C9"
				width      	493
				height     	119
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMinExclusiveFacet" @1291
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(272, 1936)
				label      	(object ItemLabel
				    Parent_View 	@1291
				    location   	(35, 1889)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	475
				    justify    	0
				    label      	"XSDMinExclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C792D000A"
				width      	493
				height     	118
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMaxExclusiveFacet" @1292
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2304, 1968)
				label      	(object ItemLabel
				    Parent_View 	@1292
				    location   	(2073, 1917)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	462
				    justify    	0
				    label      	"XSDMaxExclusiveFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C789600C2"
				width      	480
				height     	126
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDCardinalityFacet" @1293
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2336, 1424)
				label      	(object ItemLabel
				    Parent_View 	@1293
				    location   	(2134, 1372)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	404
				    justify    	0
				    label      	"XSDCardinalityFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C755D03D2"
				width      	422
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDBoundedFacet" @1294
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2352, 1264)
				label      	(object ItemLabel
				    Parent_View 	@1294
				    location   	(2163, 1212)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	378
				    justify    	0
				    label      	"XSDBoundedFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C751D0344"
				width      	396
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDOrderedFacet" @1295
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(224, 1392)
				label      	(object ItemLabel
				    Parent_View 	@1295
				    location   	(43, 1340)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	362
				    justify    	0
				    label      	"XSDOrderedFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C74DD0248"
				width      	380
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDNumericFacet" @1296
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 1232)
				label      	(object ItemLabel
				    Parent_View 	@1296
				    location   	(49, 1178)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	382
				    justify    	0
				    label      	"XSDNumericFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C75950206"
				width      	400
				height     	132
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMaxFacet" @1297
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2336, 1616)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1297
				    location   	(2135, 1535)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	402
				    justify    	0
				    label      	"XSDMaxFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3C0A1CEB010E"
				compartment 	(object Compartment
				    Parent_View 	@1297
				    location   	(2135, 1595)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	363
				    compartmentItems 	(list Compartment
					"+ inclusive : boolean"
					"+ exclusive : boolean"))
				width      	420
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDWhiteSpaceFacet" @1298
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2320, 2288)
				label      	(object ItemLabel
				    Parent_View 	@1298
				    location   	(2102, 2236)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	436
				    justify    	0
				    label      	"XSDWhiteSpaceFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C784601B7"
				width      	454
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDFractionDigitsFacet" @1299
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2304, 2624)
				label      	(object ItemLabel
				    Parent_View 	@1299
				    location   	(2074, 2572)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	460
				    justify    	0
				    label      	"XSDFractionDigitsFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C79BE02EE"
				width      	478
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDPatternFacet" @1300
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2368, 2128)
				label      	(object ItemLabel
				    Parent_View 	@1300
				    location   	(2196, 2076)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	344
				    justify    	0
				    label      	"XSDPatternFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C6ADB026C"
				width      	362
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDEnumerationFacet" @1301
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(256, 2096)
				label      	(object ItemLabel
				    Parent_View 	@1301
				    location   	(36, 2044)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	440
				    justify    	0
				    label      	"XSDEnumerationFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C6ACE0141"
				width      	458
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDLengthFacet" @1302
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(208, 2272)
				label      	(object ItemLabel
				    Parent_View 	@1302
				    location   	(38, 2220)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	340
				    justify    	0
				    label      	"XSDLengthFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C776200E7"
				width      	358
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMinFacet" @1303
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 1584)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1303
				    location   	(38, 1503)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	404
				    justify    	0
				    label      	"XSDMinFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3C0A1CDE037C"
				compartment 	(object Compartment
				    Parent_View 	@1303
				    location   	(38, 1563)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	363
				    compartmentItems 	(list Compartment
					"+ inclusive : boolean"
					"+ exclusive : boolean"))
				width      	422
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMaxLengthFacet" @1304
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2320, 2464)
				label      	(object ItemLabel
				    Parent_View 	@1304
				    location   	(2111, 2412)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	418
				    justify    	0
				    label      	"XSDMaxLengthFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C77C70146"
				width      	436
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDMinLengthFacet" @1305
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 2448)
				label      	(object ItemLabel
				    Parent_View 	@1305
				    location   	(39, 2396)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	402
				    justify    	0
				    label      	"XSDMinLengthFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C778C0065"
				width      	420
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDTotalDigitsFacet" @1306
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(240, 2608)
				label      	(object ItemLabel
				    Parent_View 	@1306
				    location   	(38, 2556)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	404
				    justify    	0
				    label      	"XSDTotalDigitsFacet")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B6C79A0020E"
				width      	422
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDComplexTypeDefinition" @1307
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(928, 1152)
				label      	(object ItemLabel
				    Parent_View 	@1307
				    location   	(667, 1100)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	522
				    justify    	0
				    label      	"XSDComplexTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682B82031A"
				width      	540
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDParticle" @1308
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(176, 1072)
				label      	(object ItemLabel
				    Parent_View 	@1308
				    location   	(50, 1020)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	252
				    justify    	0
				    label      	"XSDParticle")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BBD01F7"
				width      	270
				height     	128
				annotation 	8
				autoResize 	TRUE)
			    (object ClassView "Class" "Logical View::xsd::XSDSimpleTypeDefinition" @1309
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(1232, 1360)
				label      	(object ItemLabel
				    Parent_View 	@1309
				    location   	(944, 1304)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	576
				    justify    	0
				    label      	"XSDSimpleTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	13434879
				quidu      	"3B682BA7005D"
				compartment 	(object Compartment
				    Parent_View 	@1309
				    location   	(944, 1364)
				    icon_style 	"Icon"
				    fill_color 	16777215
				    anchor     	2
				    nlines     	1
				    max_width  	538
				    compartmentItems 	(list Compartment
					"<<0..*>> + validFacets : String"))
				width      	594
				height     	136
				annotation 	8
				autoResize 	TRUE)
			    (object AssociationViewNew "$UNNAMED$248" @1310
				location   	(1446, 1218)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28A994030A"
				roleview_list 	(list RoleViews
				    (object RoleView "rootTypeDefinition" @1311
					Parent_View 	@1310
					location   	(582, -78)
					label      	(object SegLabel @1312
					    Parent_View 	@1311
					    location   	(1580, 1173)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	348
					    justify    	0
					    label      	"+rootTypeDefinition"
					    pctDist    	3.268293
					    height     	46
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A99700DD"
					client     	@1310
					supplier   	@1309
					vertices   	(list Points
					    (1446, 1218)
					    (1487, 1218)
					    (1487, 1292))
					line_style 	3
					origin_attachment 	(1446, 1218)
					terminal_attachment 	(1487, 1292)
					label      	(object SegLabel @1313
					    Parent_View 	@1311
					    location   	(1439, 1257)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.184211
					    height     	39
					    orientation 	1))
				    (object RoleView "$UNNAMED$249" @1314
					Parent_View 	@1310
					location   	(582, -78)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A99700E7"
					client     	@1310
					supplier   	@1309
					vertices   	(list Points
					    (1446, 1218)
					    (1405, 1218)
					    (1405, 1292))
					line_style 	3
					origin_attachment 	(1446, 1218)
					terminal_attachment 	(1405, 1292))))
			    (object AssociationViewNew "$UNNAMED$252" @1315
				location   	(1733, 1575)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B08D0252"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$253" @1316
					Parent_View 	@1315
					location   	(917, 7)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B08E0091"
					client     	@1315
					supplier   	@1309
					vertices   	(list Points
					    (1733, 1575)
					    (1487, 1575)
					    (1487, 1428))
					line_style 	3
					origin_attachment 	(1733, 1575)
					terminal_attachment 	(1487, 1428))
				    (object RoleView "maxFacet" @1317
					Parent_View 	@1315
					location   	(917, 7)
					label      	(object SegLabel @1318
					    Parent_View 	@1317
					    location   	(1751, 1541)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	204
					    justify    	0
					    label      	"+maxFacet"
					    pctDist    	0.046243
					    height     	35
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B08E009B"
					client     	@1315
					supplier   	@1297
					line_style 	3
					origin_attachment 	(1733, 1575)
					terminal_attachment 	(2126, 1575)
					label      	(object SegLabel @1319
					    Parent_View 	@1317
					    location   	(2042, 1536)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.789157
					    height     	40
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$254" @1320
				location   	(1587, 1793)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0AB0396"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$255" @1321
					Parent_View 	@1320
					location   	(707, -31)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0AC03C9"
					client     	@1320
					supplier   	@1309
					vertices   	(list Points
					    (1587, 1793)
					    (1447, 1793)
					    (1447, 1428))
					line_style 	3
					origin_attachment 	(1587, 1793)
					terminal_attachment 	(1447, 1428))
				    (object RoleView "maxInclusiveFacet" @1322
					Parent_View 	@1320
					location   	(707, -31)
					label      	(object SegLabel @1323
					    Parent_View 	@1322
					    location   	(1737, 1751)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	360
					    justify    	0
					    label      	"+maxInclusiveFacet"
					    pctDist    	0.298441
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0AC03D4"
					client     	@1320
					supplier   	@1289
					line_style 	3
					origin_attachment 	(1587, 1793)
					terminal_attachment 	(2092, 1793)
					label      	(object SegLabel @1324
					    Parent_View 	@1322
					    location   	(2020, 1754)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.859155
					    height     	40
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$256" @1325
				location   	(937, 1787)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0AF0338"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$257" @1326
					Parent_View 	@1325
					location   	(617, -5)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0B001F9"
					client     	@1325
					supplier   	@1309
					vertices   	(list Points
					    (937, 1787)
					    (997, 1787)
					    (997, 1428))
					line_style 	3
					origin_attachment 	(937, 1787)
					terminal_attachment 	(997, 1428))
				    (object RoleView "minInclusiveFacet" @1327
					Parent_View 	@1325
					location   	(617, -5)
					label      	(object SegLabel @1328
					    Parent_View 	@1327
					    location   	(792, 1745)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	348
					    justify    	0
					    label      	"+minInclusiveFacet"
					    pctDist    	0.346062
					    height     	43
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0B00203"
					client     	@1325
					supplier   	@1290
					line_style 	3
					origin_attachment 	(937, 1787)
					terminal_attachment 	(518, 1787)
					label      	(object SegLabel @1329
					    Parent_View 	@1327
					    location   	(575, 1743)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.863962
					    height     	45
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$258" @1330
				location   	(981, 1937)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0B30207"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$259" @1331
					Parent_View 	@1330
					location   	(677, -79)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0B40190"
					client     	@1330
					supplier   	@1309
					vertices   	(list Points
					    (981, 1937)
					    (1041, 1937)
					    (1041, 1428))
					line_style 	3
					origin_attachment 	(981, 1937)
					terminal_attachment 	(1041, 1428))
				    (object RoleView "minExclusiveFacet" @1332
					Parent_View 	@1330
					location   	(677, -79)
					label      	(object SegLabel @1333
					    Parent_View 	@1332
					    location   	(823, 1900)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+minExclusiveFacet"
					    pctDist    	0.341253
					    height     	38
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0B4019A"
					client     	@1330
					supplier   	@1291
					line_style 	3
					origin_attachment 	(981, 1937)
					terminal_attachment 	(518, 1937)
					label      	(object SegLabel @1334
					    Parent_View 	@1332
					    location   	(589, 1897)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.846652
					    height     	41
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$260" @1335
				location   	(1469, 1953)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0B6028D"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$261" @1336
					Parent_View 	@1335
					location   	(621, -95)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0B70217"
					client     	@1335
					supplier   	@1309
					vertices   	(list Points
					    (1469, 1953)
					    (1400, 1953)
					    (1400, 1428))
					line_style 	3
					origin_attachment 	(1469, 1953)
					terminal_attachment 	(1400, 1428))
				    (object RoleView "maxExclusiveFacet" @1337
					Parent_View 	@1335
					location   	(621, -95)
					label      	(object SegLabel @1338
					    Parent_View 	@1337
					    location   	(1646, 1913)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	384
					    justify    	0
					    label      	"+maxExclusiveFacet"
					    pctDist    	0.298097
					    height     	41
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0B70221"
					client     	@1335
					supplier   	@1292
					line_style 	3
					origin_attachment 	(1469, 1953)
					terminal_attachment 	(2064, 1953)
					label      	(object SegLabel @1339
					    Parent_View 	@1337
					    location   	(1961, 1913)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.827236
					    height     	41
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$262" @1340
				location   	(1122, 2180)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0BC0051"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$263" @1341
					Parent_View 	@1340
					location   	(-318, 628)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0BC0246"
					client     	@1340
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1122, 2180)
					terminal_attachment 	(1122, 1428))
				    (object RoleView "lengthFacet" @1342
					Parent_View 	@1340
					location   	(-318, 628)
					label      	(object SegLabel @1343
					    Parent_View 	@1342
					    location   	(804, 2204)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+lengthFacet"
					    pctDist    	0.475472
					    height     	37
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0BC0250"
					client     	@1340
					supplier   	@1302
					vertices   	(list Points
					    (1122, 2180)
					    (1122, 2240)
					    (387, 2240))
					line_style 	3
					origin_attachment 	(1122, 2180)
					terminal_attachment 	(387, 2240)
					label      	(object SegLabel @1344
					    Parent_View 	@1342
					    location   	(471, 2204)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.895597
					    height     	37
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$266" @1345
				location   	(1084, 1989)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0C2021D"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$267" @1346
					Parent_View 	@1345
					location   	(-1380, 437)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C300AB"
					client     	@1345
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1084, 1989)
					terminal_attachment 	(1084, 1428))
				    (object RoleView "enumerationFacets" @1347
					Parent_View 	@1345
					location   	(-1380, 437)
					label      	(object SegLabel @1348
					    Parent_View 	@1347
					    location   	(837, 2016)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	372
					    justify    	0
					    label      	"+enumerationFacets"
					    pctDist    	0.465857
					    height     	34
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C300AC"
					client     	@1345
					supplier   	@1301
					vertices   	(list Points
					    (1084, 1989)
					    (1084, 2049)
					    (485, 2049))
					line_style 	3
					origin_attachment 	(1084, 1989)
					terminal_attachment 	(485, 2049)
					label      	(object SegLabel @1349
					    Parent_View 	@1347
					    location   	(583, 2021)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.851290
					    height     	29
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$268" @1350
				location   	(1451, 2074)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0C50159"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$269" @1351
					Parent_View 	@1350
					location   	(-1525, 538)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C600B0"
					client     	@1350
					supplier   	@1309
					vertices   	(list Points
					    (1451, 2074)
					    (1362, 2074)
					    (1362, 1428))
					line_style 	3
					origin_attachment 	(1451, 2074)
					terminal_attachment 	(1362, 1428))
				    (object RoleView "patternFacets" @1352
					Parent_View 	@1350
					location   	(-1525, 538)
					label      	(object SegLabel @1353
					    Parent_View 	@1352
					    location   	(1720, 2038)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+patternFacets"
					    pctDist    	0.367223
					    height     	37
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C600BA"
					client     	@1350
					supplier   	@1300
					line_style 	3
					origin_attachment 	(1451, 2074)
					terminal_attachment 	(2187, 2074)
					label      	(object SegLabel @1354
					    Parent_View 	@1352
					    location   	(1972, 2035)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..*"
					    pctDist    	0.708649
					    height     	40
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$270" @1355
				location   	(1827, 1400)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0C802A7"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$271" @1356
					Parent_View 	@1355
					location   	(-1149, -472)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C901EA"
					client     	@1355
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1827, 1400)
					terminal_attachment 	(1529, 1400))
				    (object RoleView "cardinalityFacet" @1357
					Parent_View 	@1355
					location   	(-1149, -472)
					label      	(object SegLabel @1358
					    Parent_View 	@1357
					    location   	(1847, 1358)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	312
					    justify    	0
					    label      	"+cardinalityFacet"
					    pctDist    	0.071730
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C901F5"
					client     	@1355
					supplier   	@1293
					line_style 	3
					origin_attachment 	(1827, 1400)
					terminal_attachment 	(2125, 1400)
					label      	(object SegLabel @1359
					    Parent_View 	@1357
					    location   	(2083, 1357)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.863426
					    height     	44
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$280" @1360
				location   	(1262, 2413)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0DB0377"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$281" @1361
					Parent_View 	@1360
					location   	(-786, 301)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0DC035A"
					client     	@1360
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1262, 2413)
					terminal_attachment 	(1262, 1428))
				    (object RoleView "fractionDigitsFacet" @1362
					Parent_View 	@1360
					location   	(-786, 301)
					label      	(object SegLabel @1363
					    Parent_View 	@1362
					    location   	(1608, 2556)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	360
					    justify    	0
					    label      	"+fractionDigitsFacet"
					    pctDist    	0.537393
					    height     	41
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0DC0364"
					client     	@1360
					supplier   	@1299
					vertices   	(list Points
					    (1262, 2413)
					    (1262, 2596)
					    (2065, 2596))
					line_style 	3
					origin_attachment 	(1262, 2413)
					terminal_attachment 	(2065, 2596)
					label      	(object SegLabel @1364
					    Parent_View 	@1362
					    location   	(1979, 2556)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.913886
					    height     	41
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$284" @1365
				location   	(1841, 1306)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0E300D9"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$285" @1366
					Parent_View 	@1365
					location   	(-1135, -790)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0E4038E"
					client     	@1365
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1841, 1306)
					terminal_attachment 	(1529, 1306))
				    (object RoleView "boundedFacet" @1367
					Parent_View 	@1365
					location   	(-1135, -790)
					label      	(object SegLabel @1368
					    Parent_View 	@1367
					    location   	(1832, 1270)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	288
					    justify    	0
					    label      	"+boundedFacet"
					    pctDist    	-0.031746
					    height     	37
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0E40398"
					client     	@1365
					supplier   	@1294
					line_style 	3
					origin_attachment 	(1841, 1306)
					terminal_attachment 	(2154, 1306)
					label      	(object SegLabel @1369
					    Parent_View 	@1367
					    location   	(2077, 1275)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.754717
					    height     	32
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$264" @1370
				location   	(1328, 2186)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0BF018C"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$265" @1371
					Parent_View 	@1370
					location   	(-640, 634)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C0006B"
					client     	@1370
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1328, 2186)
					terminal_attachment 	(1328, 1428))
				    (object RoleView "whiteSpaceFacet" @1372
					Parent_View 	@1370
					location   	(-640, 634)
					label      	(object SegLabel @1373
					    Parent_View 	@1372
					    location   	(1673, 2207)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	336
					    justify    	0
					    label      	"+whiteSpaceFacet"
					    pctDist    	0.490909
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0C00075"
					client     	@1370
					supplier   	@1298
					vertices   	(list Points
					    (1328, 2186)
					    (1328, 2246)
					    (2093, 2246))
					line_style 	3
					origin_attachment 	(1328, 2186)
					terminal_attachment 	(2093, 2246)
					label      	(object SegLabel @1374
					    Parent_View 	@1372
					    location   	(2033, 2203)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.926763
					    height     	44
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$282" @1375
				location   	(674, 1390)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0DF0048"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$283" @1376
					Parent_View 	@1375
					location   	(-1854, -706)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0DF03B9"
					client     	@1375
					supplier   	@1309
					line_style 	3
					origin_attachment 	(674, 1390)
					terminal_attachment 	(935, 1390))
				    (object RoleView "orderedFacet" @1377
					Parent_View 	@1375
					location   	(-1854, -706)
					label      	(object SegLabel @1378
					    Parent_View 	@1377
					    location   	(658, 1353)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	264
					    justify    	0
					    label      	"+orderedFacet"
					    pctDist    	0.061538
					    height     	38
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0DF03C3"
					client     	@1375
					supplier   	@1295
					line_style 	3
					origin_attachment 	(674, 1390)
					terminal_attachment 	(414, 1390)
					label      	(object SegLabel @1379
					    Parent_View 	@1377
					    location   	(510, 1355)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.634615
					    height     	36
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$272" @1380
				location   	(687, 1296)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0CB039C"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$273" @1381
					Parent_View 	@1380
					location   	(-1809, -576)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0CC03D0"
					client     	@1380
					supplier   	@1309
					line_style 	3
					origin_attachment 	(687, 1296)
					terminal_attachment 	(935, 1296))
				    (object RoleView "numericFacet" @1382
					Parent_View 	@1380
					location   	(-1809, -576)
					label      	(object SegLabel @1383
					    Parent_View 	@1382
					    location   	(668, 1257)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	276
					    justify    	0
					    label      	"+numericFacet"
					    pctDist    	0.080972
					    height     	40
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0CC03D1"
					client     	@1380
					supplier   	@1296
					line_style 	3
					origin_attachment 	(687, 1296)
					terminal_attachment 	(440, 1296)
					label      	(object SegLabel @1384
					    Parent_View 	@1382
					    location   	(506, 1260)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.736842
					    height     	37
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$286" @1385
				location   	(1689, 1662)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B44401EC"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$287" @1386
					Parent_View 	@1385
					location   	(-183, -354)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B4450360"
					client     	@1385
					supplier   	@1309
					vertices   	(list Points
					    (1689, 1662)
					    (1487, 1662)
					    (1487, 1428))
					line_style 	3
					origin_attachment 	(1689, 1662)
					terminal_attachment 	(1487, 1428))
				    (object RoleView "effectiveMaxFacet" @1387
					Parent_View 	@1385
					location   	(-183, -354)
					label      	(object SegLabel @1388
					    Parent_View 	@1387
					    location   	(1769, 1623)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	348
					    justify    	0
					    label      	"+effectiveMaxFacet"
					    pctDist    	0.182051
					    height     	40
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B445036A"
					client     	@1385
					supplier   	@1297
					line_style 	3
					origin_attachment 	(1689, 1662)
					terminal_attachment 	(2126, 1662)
					label      	(object SegLabel @1389
					    Parent_View 	@1387
					    location   	(2044, 1627)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.815385
					    height     	36
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$288" @1390
				location   	(1328, 2258)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B54F0145"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$289" @1391
					Parent_View 	@1390
					location   	(-1072, -462)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B550038C"
					client     	@1390
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1328, 2258)
					terminal_attachment 	(1328, 1428))
				    (object RoleView "effectiveWhiteSpaceFacet" @1392
					Parent_View 	@1390
					location   	(-1072, -462)
					label      	(object SegLabel @1393
					    Parent_View 	@1392
					    location   	(1685, 2288)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	492
					    justify    	0
					    label      	"+effectiveWhiteSpaceFacet"
					    pctDist    	0.508541
					    height     	37
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B5500396"
					client     	@1390
					supplier   	@1298
					vertices   	(list Points
					    (1328, 2258)
					    (1328, 2324)
					    (2093, 2324))
					line_style 	3
					origin_attachment 	(1328, 2258)
					terminal_attachment 	(2093, 2324)
					label      	(object SegLabel @1394
					    Parent_View 	@1392
					    location   	(2009, 2293)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.898817
					    height     	32
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$290" @1395
				location   	(1297, 2366)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B5C4011C"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$291" @1396
					Parent_View 	@1395
					location   	(-607, -722)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B5C5020D"
					client     	@1395
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1297, 2366)
					terminal_attachment 	(1297, 1428))
				    (object RoleView "effectiveMaxLengthFacet" @1397
					Parent_View 	@1395
					location   	(-607, -722)
					label      	(object SegLabel @1398
					    Parent_View 	@1397
					    location   	(1657, 2463)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	480
					    justify    	0
					    label      	"+effectiveMaxLengthFacet"
					    pctDist    	0.526906
					    height     	37
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B5C50217"
					client     	@1395
					supplier   	@1304
					vertices   	(list Points
					    (1297, 2366)
					    (1297, 2499)
					    (2102, 2499))
					line_style 	3
					origin_attachment 	(1297, 2366)
					terminal_attachment 	(2102, 2499)
					label      	(object SegLabel @1399
					    Parent_View 	@1397
					    location   	(2007, 2471)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.899308
					    height     	29
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$292" @1400
				location   	(1262, 2449)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B62A00AA"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$293" @1401
					Parent_View 	@1400
					location   	(-1170, -815)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B62B0138"
					client     	@1400
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1262, 2449)
					terminal_attachment 	(1262, 1428))
				    (object RoleView "effectiveFractionDigitsFacet" @1402
					Parent_View 	@1400
					location   	(-1170, -815)
					label      	(object SegLabel @1403
					    Parent_View 	@1402
					    location   	(1640, 2634)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	528
					    justify    	0
					    label      	"+effectiveFractionDigitsFacet"
					    pctDist    	0.585315
					    height     	35
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B62B0142"
					client     	@1400
					supplier   	@1299
					vertices   	(list Points
					    (1262, 2449)
					    (1262, 2668)
					    (2065, 2668))
					line_style 	3
					origin_attachment 	(1262, 2449)
					terminal_attachment 	(2065, 2668)
					label      	(object SegLabel @1404
					    Parent_View 	@1402
					    location   	(1989, 2629)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.926485
					    height     	40
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$294" @1405
				location   	(1422, 2159)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B6B003A6"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$295" @1406
					Parent_View 	@1405
					location   	(-770, -1313)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B6B10311"
					client     	@1405
					supplier   	@1309
					vertices   	(list Points
					    (1422, 2159)
					    (1362, 2159)
					    (1362, 1428))
					line_style 	3
					origin_attachment 	(1422, 2159)
					terminal_attachment 	(1362, 1428))
				    (object RoleView "effectivePatternFacet" @1407
					Parent_View 	@1405
					location   	(-770, -1313)
					label      	(object SegLabel @1408
					    Parent_View 	@1407
					    location   	(1727, 2125)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	408
					    justify    	0
					    label      	"+effectivePatternFacet"
					    pctDist    	0.399090
					    height     	35
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B6B10312"
					client     	@1405
					supplier   	@1300
					line_style 	3
					origin_attachment 	(1422, 2159)
					terminal_attachment 	(2187, 2159)
					label      	(object SegLabel @1409
					    Parent_View 	@1407
					    location   	(2102, 2119)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.889226
					    height     	41
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$296" @1410
				location   	(1084, 2083)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B7CA026B"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$297" @1411
					Parent_View 	@1410
					location   	(828, -1373)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B7CB0186"
					client     	@1410
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1084, 2083)
					terminal_attachment 	(1084, 1428))
				    (object RoleView "effectiveEnumerationFacet" @1412
					Parent_View 	@1410
					location   	(828, -1373)
					label      	(object SegLabel @1413
					    Parent_View 	@1412
					    location   	(822, 2101)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	504
					    justify    	0
					    label      	"+effectiveEnumerationFacet"
					    pctDist    	0.488619
					    height     	43
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B7CB0190"
					client     	@1410
					supplier   	@1301
					vertices   	(list Points
					    (1084, 2083)
					    (1084, 2143)
					    (485, 2143))
					line_style 	3
					origin_attachment 	(1084, 2083)
					terminal_attachment 	(485, 2143)
					label      	(object SegLabel @1414
					    Parent_View 	@1412
					    location   	(531, 2100)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.931715
					    height     	44
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$302" @1415
				location   	(1122, 2241)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B8DC0052"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$303" @1416
					Parent_View 	@1415
					location   	(866, -479)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B8DC03B9"
					client     	@1415
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1122, 2241)
					terminal_attachment 	(1122, 1428))
				    (object RoleView "effectiveLengthFacet" @1417
					Parent_View 	@1415
					location   	(866, -479)
					label      	(object SegLabel @1418
					    Parent_View 	@1417
					    location   	(800, 2279)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	396
					    justify    	0
					    label      	"+effectiveLengthFacet"
					    pctDist    	0.491731
					    height     	40
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B8DC03C3"
					client     	@1415
					supplier   	@1302
					vertices   	(list Points
					    (1122, 2241)
					    (1122, 2318)
					    (387, 2318))
					line_style 	3
					origin_attachment 	(1122, 2241)
					terminal_attachment 	(387, 2318)
					label      	(object SegLabel @1419
					    Parent_View 	@1417
					    location   	(470, 2279)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.898567
					    height     	40
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$250" @1420
				location   	(773, 1565)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B085025B"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$251" @1421
					Parent_View 	@1420
					location   	(469, 13)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0860270"
					client     	@1420
					supplier   	@1309
					vertices   	(list Points
					    (773, 1565)
					    (959, 1565)
					    (959, 1428))
					line_style 	3
					origin_attachment 	(773, 1565)
					terminal_attachment 	(959, 1428))
				    (object RoleView "minFacet" @1422
					Parent_View 	@1420
					location   	(469, 13)
					label      	(object SegLabel @1423
					    Parent_View 	@1422
					    location   	(753, 1532)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	192
					    justify    	0
					    label      	"+minFacet"
					    pctDist    	0.063091
					    height     	34
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B086027A"
					client     	@1420
					supplier   	@1303
					line_style 	3
					origin_attachment 	(773, 1565)
					terminal_attachment 	(451, 1565)
					label      	(object SegLabel @1424
					    Parent_View 	@1422
					    location   	(534, 1523)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.746667
					    height     	43
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$304" @1425
				location   	(816, 1650)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B97001DB"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$305" @1426
					Parent_View 	@1425
					location   	(496, -334)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B97100CF"
					client     	@1425
					supplier   	@1309
					vertices   	(list Points
					    (816, 1650)
					    (959, 1650)
					    (959, 1428))
					line_style 	3
					origin_attachment 	(816, 1650)
					terminal_attachment 	(959, 1428))
				    (object RoleView "effectiveMinFacet" @1427
					Parent_View 	@1425
					location   	(496, -334)
					label      	(object SegLabel @1428
					    Parent_View 	@1427
					    location   	(764, 1614)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	336
					    justify    	0
					    label      	"+effectiveMinFacet"
					    pctDist    	0.141618
					    height     	37
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B97100D9"
					client     	@1425
					supplier   	@1303
					line_style 	3
					origin_attachment 	(816, 1650)
					terminal_attachment 	(451, 1650)
					label      	(object SegLabel @1429
					    Parent_View 	@1427
					    location   	(523, 1606)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.802740
					    height     	44
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$274" @1430
				location   	(1297, 2321)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0CF0199"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$275" @1431
					Parent_View 	@1430
					location   	(-719, 497)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0D20085"
					client     	@1430
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1297, 2321)
					terminal_attachment 	(1297, 1428))
				    (object RoleView "maxLengthFacet" @1432
					Parent_View 	@1430
					location   	(-719, 497)
					label      	(object SegLabel @1433
					    Parent_View 	@1432
					    location   	(1630, 2380)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	336
					    justify    	0
					    label      	"+maxLengthFacet"
					    pctDist    	0.472255
					    height     	30
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0D2008F"
					client     	@1430
					supplier   	@1304
					vertices   	(list Points
					    (1297, 2321)
					    (1297, 2409)
					    (2102, 2409))
					line_style 	3
					origin_attachment 	(1297, 2321)
					terminal_attachment 	(2102, 2409)
					label      	(object SegLabel @1434
					    Parent_View 	@1432
					    location   	(1994, 2366)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.879208
					    height     	44
					    orientation 	0))))
			    (object AssociationViewNew "$UNNAMED$276" @1435
				location   	(1159, 2273)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0D500C5"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$277" @1436
					Parent_View 	@1435
					location   	(-281, 449)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0D6001D"
					client     	@1435
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1159, 2273)
					terminal_attachment 	(1159, 1428))
				    (object RoleView "minLengthFacet" @1437
					Parent_View 	@1435
					location   	(-281, 449)
					label      	(object SegLabel @1438
					    Parent_View 	@1437
					    location   	(857, 2372)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	324
					    justify    	0
					    label      	"+minLengthFacet"
					    pctDist    	0.519527
					    height     	38
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0D60027"
					client     	@1435
					supplier   	@1305
					vertices   	(list Points
					    (1159, 2273)
					    (1159, 2409)
					    (450, 2409))
					line_style 	3
					origin_attachment 	(1159, 2273)
					terminal_attachment 	(450, 2409)
					label      	(object SegLabel @1439
					    Parent_View 	@1437
					    location   	(523, 2369)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.913610
					    height     	41
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$300" @1440
				location   	(1197, 2334)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B898016D"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$301" @1441
					Parent_View 	@1440
					location   	(941, -610)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B8990056"
					client     	@1440
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1197, 2334)
					terminal_attachment 	(1197, 1428))
				    (object RoleView "effectiveMinLengthFacet" @1442
					Parent_View 	@1440
					location   	(941, -610)
					label      	(object SegLabel @1443
					    Parent_View 	@1442
					    location   	(856, 2454)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	468
					    justify    	0
					    label      	"+effectiveMinLengthFacet"
					    pctDist    	0.552604
					    height     	40
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B8990060"
					client     	@1440
					supplier   	@1305
					vertices   	(list Points
					    (1197, 2334)
					    (1197, 2493)
					    (450, 2493))
					line_style 	3
					origin_attachment 	(1197, 2334)
					terminal_attachment 	(450, 2493)
					label      	(object SegLabel @1444
					    Parent_View 	@1442
					    location   	(527, 2451)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.916047
					    height     	43
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$298" @1445
				location   	(1231, 2438)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B8400062"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$299" @1446
					Parent_View 	@1445
					location   	(863, -746)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B841001D"
					client     	@1445
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1231, 2438)
					terminal_attachment 	(1231, 1428))
				    (object RoleView "effectiveTotalDigitsFacet" @1447
					Parent_View 	@1445
					location   	(863, -746)
					label      	(object SegLabel @1448
					    Parent_View 	@1447
					    location   	(859, 2632)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	468
					    justify    	0
					    label      	"+effectiveTotalDigitsFacet"
					    pctDist    	0.597030
					    height     	37
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B8410027"
					client     	@1445
					supplier   	@1306
					vertices   	(list Points
					    (1231, 2438)
					    (1231, 2668)
					    (451, 2668))
					line_style 	3
					origin_attachment 	(1231, 2438)
					terminal_attachment 	(451, 2668)
					label      	(object SegLabel @1449
					    Parent_View 	@1447
					    location   	(534, 2631)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.918812
					    height     	38
					    orientation 	1))))
			    (object AssociationViewNew "$UNNAMED$278" @1450
				location   	(1231, 2397)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28B0D800DE"
				roleview_list 	(list RoleViews
				    (object RoleView "$UNNAMED$279" @1451
					Parent_View 	@1450
					location   	(-209, 253)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0D803CD"
					client     	@1450
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1231, 2397)
					terminal_attachment 	(1231, 1428))
				    (object RoleView "totalDigitsFacet" @1452
					Parent_View 	@1450
					location   	(-209, 253)
					label      	(object SegLabel @1453
					    Parent_View 	@1452
					    location   	(853, 2550)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	312
					    justify    	0
					    label      	"+totalDigitsFacet"
					    pctDist    	0.585567
					    height     	38
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28B0D803D7"
					client     	@1450
					supplier   	@1306
					vertices   	(list Points
					    (1231, 2397)
					    (1231, 2587)
					    (451, 2587))
					line_style 	3
					origin_attachment 	(1231, 2397)
					terminal_attachment 	(451, 2587)
					label      	(object SegLabel @1454
					    Parent_View 	@1452
					    location   	(535, 2560)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.914647
					    height     	28
					    orientation 	1))))
			    (object ClassView "Class" "Logical View::xsd::XSDTypeDefinition" @1455
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeAttribute 	TRUE
				IncludeOperation 	TRUE
				location   	(1232, 768)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1455
				    location   	(1019, 574)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	426
				    justify    	0
				    label      	"XSDTypeDefinition")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B66ECD302A9"
				width      	444
				height     	413
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @1456
				location   	(1209, 1065)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1455
				vertices   	(list Points
				    (1209, 1065)
				    (1209, 974)))
			    (object AssociationViewNew "$UNNAMED$234" @1457
				location   	(1090, 1031)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C2880F503D9"
				roleview_list 	(list RoleViews
				    (object RoleView "rootTypeDefinition" @1458
					Parent_View 	@1457
					location   	(322, -25)
					label      	(object SegLabel @1459
					    Parent_View 	@1458
					    location   	(897, 1036)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	348
					    justify    	0
					    label      	"+rootTypeDefinition"
					    pctDist    	-0.098765
					    height     	194
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C2880F9003C"
					client     	@1457
					supplier   	@1455
					line_style 	3
					origin_attachment 	(1090, 1031)
					terminal_attachment 	(1090, 974)
					label      	(object SegLabel @1460
					    Parent_View 	@1458
					    location   	(1121, 1034)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.061728
					    height     	31
					    orientation 	1))
				    (object RoleView "$UNNAMED$235" @1461
					Parent_View 	@1457
					location   	(322, -25)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C2880F90046"
					client     	@1457
					supplier   	@1307
					line_style 	3
					origin_attachment 	(1090, 1031)
					terminal_attachment 	(1090, 1088))))
			    (object AssociationViewNew "$UNNAMED$240" @1462
				location   	(1538, 873)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28A6DB01E5"
				roleview_list 	(list RoleViews
				    (object RoleView "rootType" @1463
					Parent_View 	@1462
					location   	(178, 105)
					label      	(object SegLabel @1464
					    Parent_View 	@1463
					    location   	(1558, 792)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	180
					    justify    	0
					    label      	"+rootType"
					    pctDist    	-1.760870
					    height     	20
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A6DD03DD"
					client     	@1462
					supplier   	@1455
					vertices   	(list Points
					    (1538, 873)
					    (1538, 919)
					    (1454, 919))
					line_style 	3
					origin_attachment 	(1538, 873)
					terminal_attachment 	(1454, 919)
					label      	(object SegLabel @1465
					    Parent_View 	@1463
					    location   	(1509, 875)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.016667
					    height     	30
					    orientation 	1))
				    (object RoleView "$UNNAMED$241" @1466
					Parent_View 	@1462
					location   	(178, 105)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A6DD03DE"
					client     	@1462
					supplier   	@1455
					vertices   	(list Points
					    (1538, 873)
					    (1538, 828)
					    (1454, 828))
					line_style 	3
					origin_attachment 	(1538, 873)
					terminal_attachment 	(1454, 828))))
			    (object AssociationViewNew "$UNNAMED$242" @1467
				location   	(1535, 684)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28A7120108"
				roleview_list 	(list RoleViews
				    (object RoleView "baseType" @1468
					Parent_View 	@1467
					location   	(175, -84)
					label      	(object SegLabel @1469
					    Parent_View 	@1468
					    location   	(1559, 597)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	204
					    justify    	0
					    label      	"+baseType"
					    pctDist    	-1.977273
					    height     	24
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A7140151"
					client     	@1467
					supplier   	@1455
					vertices   	(list Points
					    (1535, 684)
					    (1535, 728)
					    (1454, 728))
					line_style 	3
					origin_attachment 	(1535, 684)
					terminal_attachment 	(1454, 728)
					label      	(object SegLabel @1470
					    Parent_View 	@1468
					    location   	(1506, 683)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	-0.027778
					    height     	30
					    orientation 	1))
				    (object RoleView "$UNNAMED$243" @1471
					Parent_View 	@1467
					location   	(175, -84)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A714015B"
					client     	@1467
					supplier   	@1455
					vertices   	(list Points
					    (1535, 684)
					    (1535, 641)
					    (1454, 641))
					line_style 	3
					origin_attachment 	(1535, 684)
					terminal_attachment 	(1454, 641))))
			    (object AssociationViewNew "$UNNAMED$246" @1472
				location   	(613, 940)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28A7ED03C0"
				roleview_list 	(list RoleViews
				    (object RoleView "complexType" @1473
					Parent_View 	@1472
					location   	(-747, 172)
					label      	(object SegLabel @1474
					    Parent_View 	@1473
					    location   	(465, 983)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	264
					    justify    	0
					    label      	"+complexType"
					    pctDist    	0.373057
					    height     	43
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A7F40117"
					client     	@1472
					supplier   	@1308
					vertices   	(list Points
					    (613, 940)
					    (284, 940)
					    (284, 1008))
					line_style 	3
					origin_attachment 	(613, 940)
					terminal_attachment 	(284, 1008)
					label      	(object SegLabel @1475
					    Parent_View 	@1473
					    location   	(224, 972)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	0.909320
					    height     	61
					    orientation 	1))
				    (object RoleView "$UNNAMED$247" @1476
					Parent_View 	@1472
					location   	(-747, 172)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A7F40121"
					client     	@1472
					supplier   	@1455
					line_style 	3
					origin_attachment 	(613, 940)
					terminal_attachment 	(1010, 940))))
			    (object InheritView "" @1477
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B7FCAB1004D"
				client     	@1455
				supplier   	@1285
				line_style 	3
				origin_attachment 	(1112, 562)
				terminal_attachment 	(1112, 510)
				drawSupplier 	@1286)
			    (object InheritView "" @1478
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3BA0D01901F1"
				client     	@1307
				supplier   	@1455
				line_style 	3
				origin_attachment 	(1146, 1088)
				terminal_attachment 	(1146, 1065)
				drawSupplier 	@1456)
			    (object AssociationViewNew "$UNNAMED$244" @1479
				location   	(1362, 1133)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28A74B0178"
				roleview_list 	(list RoleViews
				    (object RoleView "simpleType" @1480
					Parent_View 	@1479
					location   	(-158, -163)
					label      	(object SegLabel @1481
					    Parent_View 	@1480
					    location   	(1499, 1094)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	240
					    justify    	0
					    label      	"+simpleType"
					    pctDist    	-0.246753
					    height     	137
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A74D017B"
					client     	@1479
					supplier   	@1309
					line_style 	3
					origin_attachment 	(1362, 1133)
					terminal_attachment 	(1362, 1292)
					label      	(object SegLabel @1482
					    Parent_View 	@1480
					    location   	(1321, 1097)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"0..1"
					    pctDist    	-0.227273
					    height     	42
					    orientation 	1))
				    (object RoleView "$UNNAMED$245" @1483
					Parent_View 	@1479
					location   	(-158, -163)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A74D0185"
					client     	@1479
					supplier   	@1455
					line_style 	3
					origin_attachment 	(1362, 1133)
					terminal_attachment 	(1362, 974))))
			    (object ClassView "Class" "Logical View::xsd::XSDFeature" @1484
				ShowCompartmentStereotypes 	TRUE
				SuppressOperation 	TRUE
				IncludeOperation 	TRUE
				location   	(2272, 384)
				font       	(object Font
				    italics    	TRUE)
				label      	(object ItemLabel
				    Parent_View 	@1484
				    location   	(2002, 303)
				    fill_color 	13434879
				    nlines     	1
				    max_width  	540
				    justify    	0
				    label      	"XSDFeature")
				icon_style 	"Icon"
				line_color 	3342489
				fill_color 	16777088
				quidu      	"3B69B537026C"
				compartment 	(object Compartment
				    Parent_View 	@1484
				    location   	(2002, 363)
				    font       	(object Font
					italics    	TRUE)
				    icon_style 	"Icon"
				    fill_color 	13434879
				    anchor     	2
				    nlines     	2
				    max_width  	508
				    compartmentItems 	(list Compartment
					"+ global : boolean"
					"+ featureReference : boolean"))
				width      	558
				height     	186
				annotation 	8
				autoResize 	TRUE)
			    (object InheritTreeView "" @1485
				location   	(2262, 568)
				line_color 	3342489
				fill_color 	13434879
				supplier   	@1484
				vertices   	(list Points
				    (2262, 568)
				    (2262, 477)))
			    (object InheritView "" @1486
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69EDEE01BF"
				client     	@1281
				supplier   	@1484
				line_style 	3
				origin_attachment 	(2346, 595)
				terminal_attachment 	(2346, 568)
				drawSupplier 	@1485)
			    (object AssociationViewNew "$UNNAMED$238" @1487
				location   	(1553, 453)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C28A0F201A4"
				roleview_list 	(list RoleViews
				    (object RoleView "type" @1488
					Parent_View 	@1487
					location   	(801, 293)
					label      	(object SegLabel @1489
					    Parent_View 	@1488
					    location   	(1331, 499)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	108
					    justify    	0
					    label      	"+type"
					    pctDist    	0.506266
					    height     	46
					    orientation 	0)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A0F302E5"
					client     	@1487
					supplier   	@1455
					vertices   	(list Points
					    (1553, 453)
					    (1222, 453)
					    (1222, 562))
					line_style 	3
					origin_attachment 	(1553, 453)
					terminal_attachment 	(1222, 562)
					label      	(object SegLabel @1490
					    Parent_View 	@1488
					    location   	(1185, 479)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.812030
					    height     	38
					    orientation 	1))
				    (object RoleView "$UNNAMED$239" @1491
					Parent_View 	@1487
					location   	(801, 293)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C28A0F302F0"
					client     	@1487
					supplier   	@1484
					line_style 	3
					origin_attachment 	(1553, 453)
					terminal_attachment 	(1993, 453))))
			    (object AssociationViewNew "$UNNAMED$130" @1492
				location   	(1908, 353)
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C29010602D7"
				roleview_list 	(list RoleViews
				    (object RoleView "resolvedFeature" @1493
					Parent_View 	@1492
					location   	(-268, -159)
					label      	(object SegLabel @1494
					    Parent_View 	@1493
					    location   	(1729, 352)
					    anchor     	1
					    anchor_loc 	1
					    nlines     	1
					    max_width  	312
					    justify    	0
					    label      	"+resolvedFeature"
					    pctDist    	-0.029412
					    height     	180
					    orientation 	1)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C29010B000E"
					client     	@1492
					supplier   	@1484
					vertices   	(list Points
					    (1908, 353)
					    (1908, 387)
					    (1993, 387))
					line_style 	3
					origin_attachment 	(1908, 353)
					terminal_attachment 	(1993, 387)
					label      	(object SegLabel @1495
					    Parent_View 	@1493
					    location   	(1945, 354)
					    anchor     	2
					    anchor_loc 	1
					    nlines     	1
					    max_width  	15
					    justify    	0
					    label      	"1"
					    pctDist    	0.596639
					    height     	34
					    orientation 	0))
				    (object RoleView "$UNNAMED$131" @1496
					Parent_View 	@1492
					location   	(-268, -159)
					stereotype 	TRUE
					line_color 	3342489
					quidu      	"3C29010B0018"
					client     	@1492
					supplier   	@1484
					vertices   	(list Points
					    (1908, 353)
					    (1908, 319)
					    (1993, 319))
					line_style 	3
					origin_attachment 	(1908, 353)
					terminal_attachment 	(1993, 319))))
			    (object InheritView "" @1497
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A26036D"
				client     	@1285
				supplier   	@1284
				vertices   	(list Points
				    (494, 284)
				    (494, 244)
				    (996, 244))
				line_style 	3
				origin_attachment 	(494, 284)
				terminal_attachment 	(996, 244))
			    (object InheritView "" @1498
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B69B7DC0193"
				client     	@1272
				supplier   	@1484
				line_style 	3
				origin_attachment 	(1718, 812)
				terminal_attachment 	(1718, 568)
				drawSupplier 	@1485)
			    (object InheritView "" @1499
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3B684A1302A2"
				client     	@1309
				supplier   	@1455
				line_style 	3
				origin_attachment 	(1265, 1292)
				terminal_attachment 	(1265, 1065)
				drawSupplier 	@1456)
			    (object InheritView "" @1500
				stereotype 	TRUE
				line_color 	3342489
				quidu      	"3C290A2C0307"
				client     	@1484
				supplier   	@1284
				vertices   	(list Points
				    (2147, 291)
				    (2147, 244)
				    (1468, 244))
				line_style 	3
				origin_attachment 	(2147, 291)
				terminal_attachment 	(1468, 244)))))))
	logical_presentations 	(list unit_reference_list
	    (object ClassDiagram "Main"
		quid       	"3ABFD9A70163"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list
		    (object CategoryView "Logical View::http" @1501
			location   	(336, 224)
			label      	(object ItemLabel
			    Parent_View 	@1501
			    location   	(192, 140)
			    fill_color 	13434879
			    nlines     	2
			    max_width  	288
			    justify    	0
			    label      	"http")
			icon_style 	"Icon"
			line_color 	3342489
			fill_color 	13434879
			quidu      	"3ABFD9AD01F8"
			width      	300
			height     	180)
		    (object CategoryView "Logical View::wsdl" @1502
			location   	(784, 224)
			label      	(object ItemLabel
			    Parent_View 	@1502
			    location   	(640, 140)
			    fill_color 	13434879
			    nlines     	2
			    max_width  	288
			    justify    	0
			    label      	"wsdl")
			icon_style 	"Icon"
			line_color 	3342489
			fill_color 	13434879
			quidu      	"3ADFB8E5021E"
			width      	300
			height     	180)
		    (object CategoryView "Logical View::xsd" @1503
			location   	(1232, 224)
			label      	(object ItemLabel
			    Parent_View 	@1503
			    location   	(1088, 140)
			    fill_color 	13434879
			    nlines     	2
			    max_width  	288
			    justify    	0
			    label      	"xsd")
			icon_style 	"Icon"
			line_color 	3342489
			fill_color 	13434879
			quidu      	"39ABDC6F01AA"
			width      	300
			height     	180)))))
    root_subsystem 	(object SubSystem "Component View"
	quid       	"3ABFD9A70152"
	physical_models 	(list unit_reference_list)
	physical_presentations 	(list unit_reference_list
	    (object Module_Diagram "Main"
		quid       	"3ABFD9A7018B"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    process_structure 	(object Processes
	quid       	"3ABFD9A70153"
	ProcsNDevs 	(list
	    (object Process_Diagram "Deployment View"
		quid       	"3ABFD9A70155"
		title      	"Deployment View"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    properties 	(object Properties
	attributes 	(list Attribute_Set
	    (object Attribute
		tool       	"DDL"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"DDL"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"DDL"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"DDL"
			name       	"DataBase"
			value      	("DataBaseSet" 800))
		    (object Attribute
			tool       	"DDL"
			name       	"DataBaseSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"DDL"
				name       	"ANSI"
				value      	800)
			    (object Attribute
				tool       	"DDL"
				name       	"Oracle"
				value      	801)
			    (object Attribute
				tool       	"DDL"
				name       	"SQLServer"
				value      	802)
			    (object Attribute
				tool       	"DDL"
				name       	"Sybase"
				value      	803)
			    (object Attribute
				tool       	"DDL"
				name       	"Watcom"
				value      	804)))
		    (object Attribute
			tool       	"DDL"
			name       	"PrimaryKeyColumnName"
			value      	"Id")
		    (object Attribute
			tool       	"DDL"
			name       	"PrimaryKeyColumnType"
			value      	"NUMBER(5)")
		    (object Attribute
			tool       	"DDL"
			name       	"ViewName"
			value      	"V_")
		    (object Attribute
			tool       	"DDL"
			name       	"TableName"
			value      	"T_")
		    (object Attribute
			tool       	"DDL"
			name       	"InheritSuffix"
			value      	"_V")
		    (object Attribute
			tool       	"DDL"
			name       	"DropClause"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"BaseViews"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"DDLScriptFilename"
			value      	"DDL1.SQL")))
	    (object Attribute
		tool       	"DDL"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"DDL"
			name       	"ColumnType"
			value      	"VARCHAR")
		    (object Attribute
			tool       	"DDL"
			name       	"Length"
			value      	"")
		    (object Attribute
			tool       	"DDL"
			name       	"NullsOK"
			value      	TRUE)
		    (object Attribute
			tool       	"DDL"
			name       	"PrimaryKey"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"Unique"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"CompositeUnique"
			value      	FALSE)
		    (object Attribute
			tool       	"DDL"
			name       	"CheckConstraint"
			value      	"")))
	    (object Attribute
		tool       	"DDL"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"framework"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"IDL"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"IDL"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"StopOnError"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"GeneratePreserveRegions"
			value      	TRUE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"ImplementationType"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"ConstValue"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDefaultSpecifier"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"DefaultSpecifier"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"IDLElement"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"IDLSpecificationType"
			value      	("IDLSpecSet" 22))
		    (object Attribute
			tool       	"IDL"
			name       	"IDLSpecSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"IDL"
				name       	"Interface"
				value      	22)
			    (object Attribute
				tool       	"IDL"
				name       	"Typedef"
				value      	54)
			    (object Attribute
				tool       	"IDL"
				name       	"Enumeration"
				value      	8)
			    (object Attribute
				tool       	"IDL"
				name       	"Const"
				value      	71)
			    (object Attribute
				tool       	"IDL"
				name       	"Exception"
				value      	61)
			    (object Attribute
				tool       	"IDL"
				name       	"Struct"
				value      	51)
			    (object Attribute
				tool       	"IDL"
				name       	"Union"
				value      	81)))))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.http/src/rose/httpbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"IDL"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateIDLModule"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"IncludeBySimpleName"
			value      	FALSE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.http/src/rose/httpbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"IDL"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"IDL"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"IDL"
			name       	"IncludeBySimpleName"
			value      	FALSE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"OperationIsOneWay"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"Context"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"Raises"
			value      	"")))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"IDL"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"IsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"ConstValue"
			value      	"")))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Has"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"NameIfUnlabeled"
			value      	"the_$supplier")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"BoundedHasRelType"
			value      	("HasRelTypeSet" 47))
		    (object Attribute
			tool       	"IDL"
			name       	"HasRelTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"IDL"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"IDL"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"NameIfUnlabeled"
			value      	"the_$supplier")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"IDL"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"IDL"
			name       	"BoundedRoleType"
			value      	("AssocTypeSet" 47))
		    (object Attribute
			tool       	"IDL"
			name       	"AssocTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"IDL"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"IDL"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Uses"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"GenerateForwardReference"
			value      	FALSE)))
	    (object Attribute
		tool       	"IDL"
		name       	"default__Subsystem"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"IDL"
			name       	"Directory"
			value      	"AUTO GENERATE")))
	    (object Attribute
		tool       	"IDL"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Java"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"Java"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"StopOnError"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"Java"
			name       	"UsePrefixes"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"InstanceVariablePrefix"
			value      	"m_")
		    (object Attribute
			tool       	"Java"
			name       	"ClassVariablePrefix"
			value      	"s_")
		    (object Attribute
			tool       	"Java"
			name       	"DefaultAttributeDataType"
			value      	"int")
		    (object Attribute
			tool       	"Java"
			name       	"DefaultOperationReturnType"
			value      	"void")
		    (object Attribute
			tool       	"Java"
			name       	"RootDir"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"AutoSync"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ShowCodegenDlg"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocDefaultAuthor"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"JavadocDefaultVersion"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"JavadocDefaultSince"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"JavadocNumAsterisks"
			value      	0)
		    (object Attribute
			tool       	"Java"
			name       	"MaxNumChars"
			value      	80)
		    (object Attribute
			tool       	"Java"
			name       	"Editor"
			value      	("EditorType" 100))
		    (object Attribute
			tool       	"Java"
			name       	"VM"
			value      	("VMType" 200))
		    (object Attribute
			tool       	"Java"
			name       	"ClassPath"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EditorType"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"BuiltIn"
				value      	100)
			    (object Attribute
				tool       	"Java"
				name       	"WindowsShell"
				value      	101)))
		    (object Attribute
			tool       	"Java"
			name       	"VMType"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Sun"
				value      	200)
			    (object Attribute
				tool       	"Java"
				name       	"Microsoft"
				value      	201)
			    (object Attribute
				tool       	"Java"
				name       	"IBM"
				value      	202)))
		    (object Attribute
			tool       	"Java"
			name       	"NoClassCustomDlg"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GlobalImports"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"OpenBraceClassStyle"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"OpenBraceMethodStyle"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"UseTabs"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"UseSpaces"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"SpacingItems"
			value      	3)
		    (object Attribute
			tool       	"Java"
			name       	"RoseDefaultCommentStyle"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"AsteriskCommentStyle"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavaCommentStyle"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocAuthor"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocSince"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"JavadocVersion"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Static"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateCode"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"DisableAutoSync"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletName"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContextRef"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"IsSingleThread"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletIsSecure"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcher"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcherPath"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherInclude"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherForward"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletgetInfo"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttribute"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttributesNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestAttributes"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestParameters"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeader"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeaderNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForHeaders"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletIntHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletDateHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletCookie"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForCookie"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContentType"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"GenerateHTML"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Generate_XML_DD"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"EJBCmpField"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBEnvironmentProperties"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBCnxFactory"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBReferences"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBNameInJAR"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType"
			value      	("EJBSessionType_Set" 200))
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	200)
			    (object Attribute
				tool       	"Java"
				name       	"Stateless"
				value      	201)
			    (object Attribute
				tool       	"Java"
				name       	"Stateful"
				value      	202)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType"
			value      	("EJBTransactionType_Set" 211))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	211)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	212)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType"
			value      	("EJBPersistenceType_Set" 220))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	220)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	221)
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	222)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBReentrant"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"BMP_Extend_CMP"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"CmIdentification"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"AdditionalImports"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"Java"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"CmIdentification"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Java"
			name       	"AdditionalImports"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"Java"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Abstract"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Static"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Native"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Synchronized"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Transient"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Volatile"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"PropertyType"
			value      	("BeanProperty_Set" 71))
		    (object Attribute
			tool       	"Java"
			name       	"BeanProperty_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Not A Property"
				value      	71)
			    (object Attribute
				tool       	"Java"
				name       	"Simple"
				value      	72)
			    (object Attribute
				tool       	"Java"
				name       	"Bound"
				value      	73)
			    (object Attribute
				tool       	"Java"
				name       	"Constrained"
				value      	74)))
		    (object Attribute
			tool       	"Java"
			name       	"IndividualChangeMgt"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write"
			value      	("Read/Write_Set" 81))
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Read & Write"
				value      	81)
			    (object Attribute
				tool       	"Java"
				name       	"Read Only"
				value      	82)
			    (object Attribute
				tool       	"Java"
				name       	"Write Only"
				value      	83)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFullyQualifiedTypes"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ContainerClass"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"InitialValue"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Transient"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Volatile"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"PropertyType"
			value      	("BeanProperty_Set" 71))
		    (object Attribute
			tool       	"Java"
			name       	"BeanProperty_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Not A Property"
				value      	71)
			    (object Attribute
				tool       	"Java"
				name       	"Simple"
				value      	72)
			    (object Attribute
				tool       	"Java"
				name       	"Bound"
				value      	73)
			    (object Attribute
				tool       	"Java"
				name       	"Constrained"
				value      	74)))
		    (object Attribute
			tool       	"Java"
			name       	"IndividualChangeMgt"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write"
			value      	("Read/Write_Set" 81))
		    (object Attribute
			tool       	"Java"
			name       	"Read/Write_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Read & Write"
				value      	81)
			    (object Attribute
				tool       	"Java"
				name       	"Read Only"
				value      	82)
			    (object Attribute
				tool       	"Java"
				name       	"Write Only"
				value      	83)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFullyQualifiedTypes"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"IsNavigable"
			value      	TRUE)))
	    (object Attribute
		tool       	"Java"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Oracle8"
		name       	"propertyId"
		value      	"360000002")
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"DDLScriptFilename"
			value      	"DDL1.SQL")
		    (object Attribute
			tool       	"Oracle8"
			name       	"DropClause"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"PrimaryKeyColumnName"
			value      	"_ID")
		    (object Attribute
			tool       	"Oracle8"
			name       	"PrimaryKeyColumnType"
			value      	"NUMBER(5,0)")
		    (object Attribute
			tool       	"Oracle8"
			name       	"SchemaNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"SchemaNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TableNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TableNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TypeNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TypeNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ViewNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ViewNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"VarrayNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"VarrayNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"NestedTableNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"NestedTableNameSuffix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ObjectTableNamePrefix"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"ObjectTableNameSuffix"
			value      	"")))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsSchema"
			value      	FALSE)))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"OID"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"WhereClause"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CheckConstraint"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionTypeLength"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionTypePrecision"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionTypeScale"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"CollectionOfREFS"
			value      	FALSE)))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"MethodKind"
			value      	("MethodKindSet" 1903))
		    (object Attribute
			tool       	"Oracle8"
			name       	"OverloadID"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"OrderNumber"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsReadNoDataState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsReadNoProcessState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsWriteNoDataState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsWriteNoProcessState"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsSelfish"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerType"
			value      	("TriggerTypeSet" 1801))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerEvent"
			value      	("TriggerEventSet" 1601))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerText"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerReferencingNames"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerForEach"
			value      	("TriggerForEachSet" 1701))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerWhenClause"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"MethodKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"MapMethod"
				value      	1901)
			    (object Attribute
				tool       	"Oracle8"
				name       	"OrderMethod"
				value      	1902)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Function"
				value      	1903)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Procedure"
				value      	1904)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Operator"
				value      	1905)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Constructor"
				value      	1906)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Destructor"
				value      	1907)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Trigger"
				value      	1908)
			    (object Attribute
				tool       	"Oracle8"
				name       	"Calculated"
				value      	1909)))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"AFTER"
				value      	1801)
			    (object Attribute
				tool       	"Oracle8"
				name       	"BEFORE"
				value      	1802)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSTEAD OF"
				value      	1803)))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerForEachSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"ROW"
				value      	1701)
			    (object Attribute
				tool       	"Oracle8"
				name       	"STATEMENT"
				value      	1702)))
		    (object Attribute
			tool       	"Oracle8"
			name       	"TriggerEventSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT"
				value      	1601)
			    (object Attribute
				tool       	"Oracle8"
				name       	"UPDATE"
				value      	1602)
			    (object Attribute
				tool       	"Oracle8"
				name       	"DELETE"
				value      	1603)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT OR UPDATE"
				value      	1604)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT OR DELETE"
				value      	1605)
			    (object Attribute
				tool       	"Oracle8"
				name       	"UPDATE OR DELETE"
				value      	1606)
			    (object Attribute
				tool       	"Oracle8"
				name       	"INSERT OR UPDATE OR DELETE"
				value      	1607)))))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"OrderNumber"
			value      	"")))
	    (object Attribute
		tool       	"Oracle8"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Oracle8"
			name       	"OrderNumber"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsUnique"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"NullsAllowed"
			value      	TRUE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"Length"
			value      	"")
		    (object Attribute
			tool       	"Oracle8"
			name       	"Precision"
			value      	"2")
		    (object Attribute
			tool       	"Oracle8"
			name       	"Scale"
			value      	"6")
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsIndex"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"IsPrimaryKey"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"CompositeUnique"
			value      	FALSE)
		    (object Attribute
			tool       	"Oracle8"
			name       	"CheckConstraint"
			value      	"")))
	    (object Attribute
		tool       	"Oracle8"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"cg"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"cg"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"UseMSVC"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"HeaderFileExtension"
			value      	"h")
		    (object Attribute
			tool       	"cg"
			name       	"HeaderFileBackupExtension"
			value      	"h~")
		    (object Attribute
			tool       	"cg"
			name       	"HeaderFileTemporaryExtension"
			value      	"h#")
		    (object Attribute
			tool       	"cg"
			name       	"CodeFileExtension"
			value      	"cpp")
		    (object Attribute
			tool       	"cg"
			name       	"CodeFileBackupExtension"
			value      	"cp~")
		    (object Attribute
			tool       	"cg"
			name       	"CodeFileTemporaryExtension"
			value      	"cp#")
		    (object Attribute
			tool       	"cg"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"StopOnError"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ErrorLimit"
			value      	30)
		    (object Attribute
			tool       	"cg"
			name       	"Directory"
			value      	"$ROSECPP_SOURCE")
		    (object Attribute
			tool       	"cg"
			name       	"PathSeparator"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"FileNameFormat"
			value      	"128vx_b")
		    (object Attribute
			tool       	"cg"
			name       	"BooleanType"
			value      	"int")
		    (object Attribute
			tool       	"cg"
			name       	"AllowTemplates"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AllowExplicitInstantiations"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AllowProtectedInheritance"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"CommentWidth"
			value      	60)
		    (object Attribute
			tool       	"cg"
			name       	"OneByValueContainer"
			value      	"$targetClass")
		    (object Attribute
			tool       	"cg"
			name       	"OneByReferenceContainer"
			value      	"$targetClass *")
		    (object Attribute
			tool       	"cg"
			name       	"OptionalByValueContainer"
			value      	"OptionalByValue<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"OptionalByReferenceContainer"
			value      	"$targetClass *")
		    (object Attribute
			tool       	"cg"
			name       	"FixedByValueContainer"
			value      	"$targetClass[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedFixedByValueContainer"
			value      	"$targetClass[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"FixedByReferenceContainer"
			value      	"$targetClass *[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedFixedByReferenceContainer"
			value      	"$targetClass *[$limit]")
		    (object Attribute
			tool       	"cg"
			name       	"BoundedByValueContainer"
			value      	"BoundedListByValue<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedBoundedByValueContainer"
			value      	"BoundedSetByValue<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"BoundedByReferenceContainer"
			value      	"BoundedListByReference<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedBoundedByReferenceContainer"
			value      	"BoundedSetByReference<$targetClass,$limit>")
		    (object Attribute
			tool       	"cg"
			name       	"UnboundedByValueContainer"
			value      	"UnboundedListByValue<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedUnboundedByValueContainer"
			value      	"UnboundedSetByValue<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"UnboundedByReferenceContainer"
			value      	"UnboundedListByReference<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedUnboundedByReferenceContainer"
			value      	"UnboundedSetByReference<$targetClass>")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedByValueContainer"
			value      	"AssociationByValue<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedQualifiedByValueContainer"
			value      	"DictionaryByValue<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedByReferenceContainer"
			value      	"AssociationByReference<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"UnorderedQualifiedByReferenceContainer"
			value      	"DictionaryByReference<$qualtype, $qualcont>")
		    (object Attribute
			tool       	"cg"
			name       	"GeneratePreserveRegions"
			value      	TRUE)))
	    (object Attribute
		tool       	"cg"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ImplementationType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ClassKey"
			value      	"class")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"PutBodiesInSpec"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDefaultConstructor"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"DefaultConstructorVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineDefaultConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ExplicitDefaultConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateCopyConstructor"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"CopyConstructorVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineCopyConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ExplicitCopyConstructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDestructor"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DestructorVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"DestructorKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineDestructor"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssignmentOperation"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"AssignmentVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"AssignmentKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineAssignmentOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEqualityOperations"
			value      	("GenerateSet" 199))
		    (object Attribute
			tool       	"cg"
			name       	"EqualityVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"EqualityKind"
			value      	("FriendKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineEqualityOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateRelationalOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"RelationalVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"RelationalKind"
			value      	("FriendKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"InlineRelationalOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateStorageMgmtOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"StorageMgmtVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineStorageMgmtOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSubscriptOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"SubscriptVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"SubscriptKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"SubscriptResultType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InlineSubscriptOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDereferenceOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DereferenceVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"DereferenceKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"DereferenceResultType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InlineDereferenceOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateIndirectionOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IndirectionVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"IndirectionKind"
			value      	("ThreeKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"IndirectionResultType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InlineIndirectionOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateStreamOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"StreamVisibility"
			value      	("VisibilitySet" 45))
		    (object Attribute
			tool       	"cg"
			name       	"InlineStreamOperations"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"ThreeKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)))
		    (object Attribute
			tool       	"cg"
			name       	"KindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)))
		    (object Attribute
			tool       	"cg"
			name       	"FriendKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"DeclareAndDefine"
				value      	199)
			    (object Attribute
				tool       	"cg"
				name       	"DeclareOnly"
				value      	205)
			    (object Attribute
				tool       	"cg"
				name       	"DoNotDeclare"
				value      	206)))
		    (object Attribute
			tool       	"cg"
			name       	"VisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)))
		    (object Attribute
			tool       	"cg"
			name       	"ConstValue"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDefaultSpecifier"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DefaultSpecifier"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.http/src/rose/httpbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"cg"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"AllowExtensionlessFileName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"IncludeFormat"
			value      	(value Text 
|// $package
|#include "$file"
|
			))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeBySimpleName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludePrecompiledHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludeOrder"
			value      	"AMIR")
		    (object Attribute
			tool       	"cg"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyle"
			value      	("InliningStyleSet" 207))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyleSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"InClassDeclaration"
				value      	208)
			    (object Attribute
				tool       	"cg"
				name       	"FollowingClassDeclaration"
				value      	207)))
		    (object Attribute
			tool       	"cg"
			name       	"TypesDefined"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeClosure"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"CmIdentification"
			value      	(value Text "  %X%  @(#) plugins/com.ibm.etools.ctc.binding.http/src/rose/httpbindingMdl.mdl, ctc, ibmctc"))
		    (object Attribute
			tool       	"cg"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"FileName"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"AllowExtensionlessFileName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludeFormat"
			value      	(value Text 
|// $package
|#include "$file"
|
			))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeBySimpleName"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludePrecompiledHeader"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"IncludeOrder"
			value      	"AMIR")
		    (object Attribute
			tool       	"cg"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyle"
			value      	("InliningStyleSet" 207))
		    (object Attribute
			tool       	"cg"
			name       	"InliningStyleSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"InClassDeclaration"
				value      	208)
			    (object Attribute
				tool       	"cg"
				name       	"FollowingClassDeclaration"
				value      	207)))
		    (object Attribute
			tool       	"cg"
			name       	"TypesDefined"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"IncludeClosure"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"OperationKind"
			value      	("OperationKindSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"OperationKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"OperationIsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"OperationIsExplicit"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"Inline"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"EntryCode"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"ExitCode"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))
		    (object Attribute
			tool       	"cg"
			name       	"BodyAnnotations"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"OperationIsOneWay"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"Context"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"Raises"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Has"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"Ordered"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"NameIfUnlabeled"
			value      	"the_$supplier")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtRelationshipVisibility"
				value      	210)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberFieldSize"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InitialValue"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetName"
			value      	"get_$relationship")
		    (object Attribute
			tool       	"cg"
			name       	"SetName"
			value      	"set_$relationship")
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKindsSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"ContainerClass"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"SelectorName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"SelectorType"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConstSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_Function"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetByReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"SetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"ForwardReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"BoundedHasRelType"
			value      	("HasRelTypeSet" 47))
		    (object Attribute
			tool       	"cg"
			name       	"HasRelTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"cg"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Association"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"NameIfUnlabeled"
			value      	"the_$targetClass")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Inherit"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"InstanceArguments"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ForwardReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"NameIfUnlabeled"
			value      	"the_$targetClass")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberName"
			value      	"$target")
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtRelationshipVisibility"
				value      	210)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberFieldSize"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"InitialValue"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"ContainerClass"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"ContainerGet"
			value      	"$data.get($keys)")
		    (object Attribute
			tool       	"cg"
			name       	"ContainerSet"
			value      	"$data.set($keys,$value)")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedContainer"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassContainer"
			value      	"$supplier *")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassInitialValue"
			value      	(value Text ""))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKindsSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetByReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetName"
			value      	"get_$target")
		    (object Attribute
			tool       	"cg"
			name       	"GetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConstSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_Function"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"InlineGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"SetName"
			value      	"set_$target")
		    (object Attribute
			tool       	"cg"
			name       	"SetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetSetByReference"
			value      	("QualifiedGetSetByReferenceSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetSetByReferenceSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_GetSetByReference"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateQualifiedGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetName"
			value      	"get_$target")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedGetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"InlineQualifiedGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateQualifiedSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedSetName"
			value      	"set_$target")
		    (object Attribute
			tool       	"cg"
			name       	"QualifiedSetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineQualifiedSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssocClassDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberName"
			value      	"$target")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtRelationshipVisibility"
				value      	210)))
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassDataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssocClassGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetName"
			value      	"get_$target")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassGetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"InlineAssocClassGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateAssocClassSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassSetName"
			value      	"set_$target")
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassSetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineAssocClassSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"AssocClassForwardReferenceOnly"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"BoundedRoleType"
			value      	("AssocTypeSet" 47))
		    (object Attribute
			tool       	"cg"
			name       	"AssocTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"cg"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"cg"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberName"
			value      	"$attribute")
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibility"
			value      	("DataMemberVisibilitySet" 14))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberVisibilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Public"
				value      	45)
			    (object Attribute
				tool       	"cg"
				name       	"Protected"
				value      	44)
			    (object Attribute
				tool       	"cg"
				name       	"Private"
				value      	43)
			    (object Attribute
				tool       	"cg"
				name       	"Implementation"
				value      	14)
			    (object Attribute
				tool       	"cg"
				name       	"AtAttributeVisibility"
				value      	211)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutability"
			value      	("DataMemberMutabilitySet" 0))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberMutabilitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Unrestricted"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Mutable"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Const"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberIsVolatile"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"DataMemberFieldSize"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateGetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateSetOperation"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetName"
			value      	"get_$attribute")
		    (object Attribute
			tool       	"cg"
			name       	"SetName"
			value      	"set_$attribute")
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKinds"
			value      	("GetSetKindsSet" 200))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetKindsSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"Common"
				value      	200)
			    (object Attribute
				tool       	"cg"
				name       	"Virtual"
				value      	201)
			    (object Attribute
				tool       	"cg"
				name       	"Abstract"
				value      	202)
			    (object Attribute
				tool       	"cg"
				name       	"Static"
				value      	203)
			    (object Attribute
				tool       	"cg"
				name       	"Friend"
				value      	204)))
		    (object Attribute
			tool       	"cg"
			name       	"GetIsConst"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConst"
			value      	("GetResultIsConstSet" 2))
		    (object Attribute
			tool       	"cg"
			name       	"GetResultIsConstSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"False"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"True"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Same_As_Function"
				value      	2)))
		    (object Attribute
			tool       	"cg"
			name       	"GetSetByReference"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineGet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"SetReturnsValue"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"InlineSet"
			value      	TRUE)
		    (object Attribute
			tool       	"cg"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"IsReadOnly"
			value      	FALSE)))
	    (object Attribute
		tool       	"cg"
		name       	"default__Uses"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"ForwardReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"BodyReferenceOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"GenerateForwardReference"
			value      	FALSE)))
	    (object Attribute
		tool       	"cg"
		name       	"default__Subsystem"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"Directory"
			value      	"AUTO GENERATE")
		    (object Attribute
			tool       	"cg"
			name       	"DirectoryIsOnSearchList"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"PrecompiledHeader"
			value      	"")))
	    (object Attribute
		tool       	"cg"
		name       	"default__Category"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"cg"
			name       	"IsNamespace"
			value      	FALSE)
		    (object Attribute
			tool       	"cg"
			name       	"Indent"
			value      	2)
		    (object Attribute
			tool       	"cg"
			name       	"CodeName"
			value      	"")
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegions"
			value      	("GenerateEmptyRegionSet" 3))
		    (object Attribute
			tool       	"cg"
			name       	"GenerateEmptyRegionSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"cg"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"cg"
				name       	"Preserved"
				value      	1)
			    (object Attribute
				tool       	"cg"
				name       	"Unpreserved"
				value      	2)
			    (object Attribute
				tool       	"cg"
				name       	"All"
				value      	3)))))
	    (object Attribute
		tool       	"MSVC"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Version"
			value      	"5.0")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCClassTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCClassTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Interface_Part"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Connection_Part"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Class_Factory"
				value      	3)))
		    (object Attribute
			tool       	"MSVC"
			name       	"CObjectFunctionality"
			value      	("CObjectFunctionalitySet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"CObjectFunctionalitySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dynamic"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dyncreate"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Serial"
				value      	3)))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateOverrideGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateDataGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DATA_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateFieldGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_FIELD_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateMessageGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateMessageMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_MSG_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MESSAGE_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEFactory"
			value      	("OLEFactorySet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEFactorySet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"None"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Built_in"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Simple"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Licensed"
				value      	3)))
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEName"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEClassID"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateOLECtlType"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"OLECtlType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateOLETypeLib"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"OLETypeLibID"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLETypeLibMajor"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLETypeLibMinor"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GeneratePropPageIDs"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"OLEPropPageIDs"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateDispatchMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"StockProperties"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"StockFunctions"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DispatchDefValue"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateDispIdEnum"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISP_ID_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateInterfaceMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"INTERFACE_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"InitInterface"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateEventMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENT_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"StockEvents"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateEventSinkMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENTSINK_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"PropNotifySinks"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateConnectionMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"CONNECTION_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"ConnectionPointIID"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"InheritanceType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"OLECommands"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MFCDeclares"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MFCImplements"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"ATL_Declares"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateCOMMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"COM_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateConnectionPointMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"CONNECTION_POINT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateMsgMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"MSG_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GeneratePropertyMap"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"PROPERTY_MAP_Entries"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCOperationTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCOperationTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Virtual_Override"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Message_Handler"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dispatch_Handler"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Event_Firing_Function"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Event_Sink_Handler"
				value      	5)
			    (object Attribute
				tool       	"MSVC"
				name       	"Std_OLE_Method"
				value      	6)
			    (object Attribute
				tool       	"MSVC"
				name       	"Command_Parser"
				value      	7)
			    (object Attribute
				tool       	"MSVC"
				name       	"Property_Get_Function"
				value      	8)
			    (object Attribute
				tool       	"MSVC"
				name       	"Property_Set_Function"
				value      	9)
			    (object Attribute
				tool       	"MSVC"
				name       	"Property_Notify_Function"
				value      	10)
			    (object Attribute
				tool       	"MSVC"
				name       	"Macro_Generated_Function"
				value      	11)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_MSG_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"MESSAGE_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENT_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"EVENTSINK_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"BodyImage"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCAttributeTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCAttributeTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Member_Property"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Get_Set_Property"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dialog_Data"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Field_Data"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Stock_Property"
				value      	5)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"PointerBase"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"StockPropertyImplementation"
			value      	"")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Has"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCAttributeTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCAttributeTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Member_Property"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Get_Set_Property"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dialog_Data"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Field_Data"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Stock_Property"
				value      	5)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"PointerBase"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"StockPropertyImplementation"
			value      	"")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"Type"
			value      	("MSVCAttributeTypeSet" 0))
		    (object Attribute
			tool       	"MSVC"
			name       	"MSVCAttributeTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"MSVC"
				name       	"Normal"
				value      	0)
			    (object Attribute
				tool       	"MSVC"
				name       	"Member_Property"
				value      	1)
			    (object Attribute
				tool       	"MSVC"
				name       	"Get_Set_Property"
				value      	2)
			    (object Attribute
				tool       	"MSVC"
				name       	"Dialog_Data"
				value      	3)
			    (object Attribute
				tool       	"MSVC"
				name       	"Field_Data"
				value      	4)
			    (object Attribute
				tool       	"MSVC"
				name       	"Stock_Property"
				value      	5)))
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DISPATCH_MAP_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"DeclSpec"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"PointerBase"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"CallType"
			value      	"")
		    (object Attribute
			tool       	"MSVC"
			name       	"StockPropertyImplementation"
			value      	"")))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateIncludesGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_INCLUDES_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateInsertLocation"
			value      	FALSE)))
	    (object Attribute
		tool       	"MSVC"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateIncludesGroup"
			value      	FALSE)
		    (object Attribute
			tool       	"MSVC"
			name       	"AFX_INCLUDES_Entries"
			value      	(value Text ""))
		    (object Attribute
			tool       	"MSVC"
			name       	"GenerateInsertLocation"
			value      	FALSE)))
	    (object Attribute
		tool       	"cg"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"SCC"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"TypeLibImporter"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Visual Basic"
		name       	"propertyId"
		value      	"783606378")
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CreatableSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Private"
				value      	221)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"PublicNotCreatable"
				value      	213)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"SingleUse"
				value      	214)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"GlobalSingleUse"
				value      	215)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"MultiUse"
				value      	219)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"GlobalMultiUse"
				value      	220)))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionBase"
			value      	"0")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionExplicit"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionCompare"
			value      	("CompareSet" 202))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Creatable"
			value      	("CreatableSet" 221))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateInitialization"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateTermination"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CollectionClass"
			value      	"Collection")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CompareSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Visual Basic"
				name       	"None"
				value      	202)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Binary"
				value      	203)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Text"
				value      	204)))))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OperationName"
			value      	"$operation")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"LibraryName"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"AliasName"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"IsStatic"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"EntryCode"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ExitCode"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"IsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"New"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"WithEvents"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Subscript"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"NameIfUnlabeled"
			value      	"the$supplier")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateGetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateSetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateLetOperation"
			value      	FALSE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"New"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"WithEvents"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Subscript"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"NameIfUnlabeled"
			value      	"the$supplier")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateGetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateSetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateLetOperation"
			value      	FALSE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Inherit"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ImplementsDelegation"
			value      	TRUE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ProjectFile"
			value      	"")))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"VisualStudio"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"CORBA"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Project"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"CreateMissingDirectories"
			value      	TRUE)
		    (object Attribute
			tool       	"CORBA"
			name       	"Editor"
			value      	("EditorType" 100))
		    (object Attribute
			tool       	"CORBA"
			name       	"IncludePath"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"StopOnError"
			value      	TRUE)
		    (object Attribute
			tool       	"CORBA"
			name       	"EditorType"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"CORBA"
				name       	"BuiltIn"
				value      	100)
			    (object Attribute
				tool       	"CORBA"
				name       	"WindowsShell"
				value      	101)))))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"ArrayDimensions"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"ConstValue"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"ImplementationType"
			value      	"")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"CmIdentification"
			value      	(value Text "  %X% %Q% %Z% %W%"))
		    (object Attribute
			tool       	"CORBA"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Module-Body"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"AdditionalIncludes"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"CmIdentification"
			value      	(value Text "  %X% %Q% %Z% %W%"))
		    (object Attribute
			tool       	"CORBA"
			name       	"CopyrightNotice"
			value      	(value Text ""))
		    (object Attribute
			tool       	"CORBA"
			name       	"InclusionProtectionSymbol"
			value      	"AUTO GENERATE")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"Context"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"OperationIsOneWay"
			value      	FALSE)))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"ArrayDimensions"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"CORBA"
			name       	"Order"
			value      	"")))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"ArrayDimensions"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"CaseSpecifier"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"GenerateForwardReference"
			value      	FALSE)
		    (object Attribute
			tool       	"CORBA"
			name       	"IsReadOnly"
			value      	FALSE)
		    (object Attribute
			tool       	"CORBA"
			name       	"Order"
			value      	"")
		    (object Attribute
			tool       	"CORBA"
			name       	"BoundedRoleType"
			value      	("AssocTypeSet" 47))
		    (object Attribute
			tool       	"CORBA"
			name       	"AssocTypeSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"CORBA"
				name       	"Array"
				value      	24)
			    (object Attribute
				tool       	"CORBA"
				name       	"Sequence"
				value      	47)))))
	    (object Attribute
		tool       	"CORBA"
		name       	"default__Uses"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"CORBA"
			name       	"GenerateForwardReference"
			value      	FALSE)))
	    (object Attribute
		tool       	"CORBA"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Java"
		name       	"Default_Servlet__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"ServletName"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContextRef"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"IsSingleThread"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletInitParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletIsSecure"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcher"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestDispatcherPath"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherInclude"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"DispatcherForward"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletgetInfo"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"Http_Servlet__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttribute"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestAttributesNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestAttributes"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameter"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletRequestParameterNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForRequestParameters"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeader"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletHeaderNames"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForHeaders"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletIntHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletDateHeader"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"ServletCookie"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"MethodForCookie"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"ServletContentType"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"GenerateHTML"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)))
	    (object Attribute
		tool       	"Java"
		name       	"Default_EJB__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Java"
			name       	"Generate_XML_DD"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"EJBCmpField"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBEnvironmentProperties"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBCnxFactory"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBReferences"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSecurityRoles"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBNameInJAR"
			value      	"")
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType"
			value      	("EJBSessionType_Set" 200))
		    (object Attribute
			tool       	"Java"
			name       	"EJBSessionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	200)
			    (object Attribute
				tool       	"Java"
				name       	"Stateless"
				value      	201)
			    (object Attribute
				tool       	"Java"
				name       	"Stateful"
				value      	202)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType"
			value      	("EJBTransactionType_Set" 211))
		    (object Attribute
			tool       	"Java"
			name       	"EJBTransactionType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	211)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	212)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType"
			value      	("EJBPersistenceType_Set" 220))
		    (object Attribute
			tool       	"Java"
			name       	"EJBPersistenceType_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	""
				value      	220)
			    (object Attribute
				tool       	"Java"
				name       	"Bean"
				value      	221)
			    (object Attribute
				tool       	"Java"
				name       	"Container"
				value      	222)))
		    (object Attribute
			tool       	"Java"
			name       	"EJBReentrant"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"BMP_Extend_CMP"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"Final"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateDefaultConstructor"
			value      	TRUE)
		    (object Attribute
			tool       	"Java"
			name       	"ConstructorIs"
			value      	("Ctor_Set" 62))
		    (object Attribute
			tool       	"Java"
			name       	"Ctor_Set"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Java"
				name       	"Public"
				value      	62)
			    (object Attribute
				tool       	"Java"
				name       	"Protected"
				value      	63)
			    (object Attribute
				tool       	"Java"
				name       	"Private"
				value      	64)))
		    (object Attribute
			tool       	"Java"
			name       	"GenerateFinalizer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateStaticInitializer"
			value      	FALSE)
		    (object Attribute
			tool       	"Java"
			name       	"GenerateInstanceInitializer"
			value      	FALSE)))
	    (object Attribute
		tool       	"R2Editor"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Rose Model Integrator"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Rose Web Publisher"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Version Control"
		name       	"HiddenTool"
		value      	FALSE))
	quid       	"3ABFD9A70154"))
