200 likes | 339 Views
Graphical Hotspot Definition A Common ATA/AECMA Approach Presentation at XML Europe ‘99 28 April 1999 Granada / Spain. Speakers David W. Cruikshank Associate Technical Fellow Co-chair ATA GWG Chief Technical Officer, CGM Open Consortium Peter Zimmermann Chief Advisor for IT
E N D
Graphical Hotspot Definition A Common ATA/AECMA Approach Presentation at XML Europe ‘99 28 April 1999 Granada / Spain
Speakers • David W. Cruikshank • Associate Technical Fellow • Co-chair ATA GWG • Chief Technical Officer, CGM Open Consortium • Peter Zimmermann • Chief Advisor for IT • Member AECMA EPWG • Observer, CGM Open Consortium
Agenda • Introduction • Background • ATA and WebCGM profiles • Concepts • Examples • Potential future extensions • Conclusion
Definitions • Graphical primitive: basic drawing element defining the geometry • Graphics metafile: CGM picture composed of graphical primitives and their associated attributes • Graphical object: addressable logical unit within a picture (realized by CGM V4 APS) • Graphical hotspot: graphical object participating in a link (XLink resource) • XML companion file: non-graphical meta-data of graphical objects • XLink file: linking elements and hotspot definitions (XLink locators)
Background • ATA GWG has been working on specifications for intelligent graphics since 1989 • Intelligent graphics functional spec (IGFUNQREQ) published in 1993 • Graphics exchange spec (GREXCHANGE): mainly CGM V3 profile • Intelligent graphics exchange spec (IGEXCHANGE): CGM V4 profile • Intelligent graphics structure model expressed as SGML DTD fragment
ATA and WebCGM profiles • CGM Open consortium founded in 1998 • WebCGM profile developed, W3C REC since January 1999 • WebCGM profile • based on ATA GREXCHANGE profile • subset of ATA CGM elements • superset of ATA linking functionality for web addressing • WebCGM intelligent graphics model
ATA Realization SEE A igsheet [2] SPACERS [1] IGNITER BOSS locator detail A detail B para [3] KEYWASHER [2] CLASSIFIED SPACERS IGNITER PLUG (AMM-74-21-02/401) SEE B para para+ [3] KEY WASHER DIMENSION A [1] IGNITER BOSS refaps A refint refaps DIMENSION C CLASSIFIED SPACERS B G-09435 (1098) G-09574 (1098) Igniter Plug Boss Installation Figure 401 david.w.cruikshank@boeing.com 28 April 1999 / Page 7 Peter.Zimmermann@m.dasa.de
WebCGM Realization SEE A picbody [2] SPACERS [1] IGNITER BOSS grobject grobject grobject para [3] KEYWASHER [2] CLASSIFIED SPACERS IGNITER PLUG (AMM-74-21-02/401) SEE B para para+ [3] KEY WASHER DIMENSION A [1] IGNITER BOSS A subpara subpara DIMENSION C CLASSIFIED SPACERS B G-09435 (1098) G-09574 (1098) Igniter Plug Boss Installation Figure 401
Concepts • Requirements • Graphics ideally shall contain only graphical information, because • Non-graphical information (meta-data) easier to maintain in XML • Decoupling of data & meta-data is more flexible • Query functions, navigation, and data analysis easier to implement • Logical structure within graphics must be exposed for reuse of graphical objects • Graphical objects belonging to different graphics canparticipate in one link • A graphical object may participate in more than one link (different behavior) • Multidirectional links within a graphic, between graphics, and between graphics and text shall be possible.
hotspot hotspot Concepts (contd.) • Outline XML CGM XML Comp. XML grobject Hotspot Definitions Linking Elements Sheet 1 CGM XML XML Companion Sheet 2 Documents Figure
Concepts (contd.) • Adressing Graphical Objects • Application Structures Content model of graphical object (conceptually expressed as an XML DTD fragment) <!ELEMENT grobject (grobject | gdata)* > <!ATTLIST grobject id ID #REQUIRED region CDATA #IMPLIED > <!ELEMENT gdata EMPTY > • XPointers • Basic form of address chosen is a URI (Uniform Resource Identifier) • Most important URI form today is an extended URL (Uniform Resource Locator) • Example for addressing a CGM file on the web: http://www.boeing.com/cgm/atacgm4.cgm • Example for addressing a graphical object with id “grobj01“ within this CGM file: http://www.boeing.com/cgm/atacgm4.xml#id(grobj01)
Concepts (contd.) • The XML Companion File (DTD fragment) <!ELEMENT graphic (grobject)* > <!ATTLIST graphic graphicid ENTITY #REQUIRED linkURI CDATA #REQUIRED > <!ELEMENT grobject (gdata)* > <!ATTLIST grobject id ID #REQUIRED type CDATA #IMPLIED name CDATA #IMPLIED descript CDATA #IMPLIED > <!ELEMENT gdata EMPTY >
Concepts (contd.) • Graphical hotspots <!ELEMENT hspot EMPTY > <!ATTLIST hspot xml:link CDATA #FIXED “locator" href CDATA #REQUIRED refgraphic ENTITY #IMPLIED role CDATA #IMPLIED title CDATA #IMPLIED show (embed | replace | new) “new" actuate (auto | user) “user" behavior CDATA #IMPLIED >
Concepts (contd.) • The Linking Element <!ELEMENT hsplink (hspot)+ > <!ATTLIST hsplink xml:link CDATA #FIXED “extended“ inline (true | false) “false“ role CDATA #IMPLIED title CDATA #IMPLIED show (embed | replace | new) “new" actuate (auto | user) “user" behavior CDATA #IMPLIED >
Bidirectional link between text and graphic - Example • CGM filename: atacgm1.cgm • XML companion file (atacgm1.xml) <graphic graphicid=“GNBR01” linkURI=“atacgm1.cgm”> <grobject id=“grobj01” name=“part1”></grobject></graphic> • XML text file (atatext1.xml) ...<pnr id=“refpart1”>Part1</pnr> is used to... • Xlink file (hsplink1.xml) <hsplink role=“text-hspot” behavior=“highlight”> <hspot href=“id(grobj01)” refgraphic=“GNBR01” title=“Part No. 1”></hspot> <hspot href=“atatext1.xml#id(refpart1)”></hspot></hsplink> or <hsplink role=“text-hspot” behavior=“highlight”> <hspot href=“atacgm1.xml#id(grobj01)” title=“Part No. 1”></hspot> <hspot href=“atatext1.xml#id(refpart1)”></hspot></hsplink>
Bidirectional link between text and graphic - Example(contd.) <hsplink role=“text-hspot” behavior=“highlight”> <hspot href=“id(grobj01)” refgraphic=“GNBR01” title=“Part No. 1”> </hspot> <hspot href=“atatext1.xml# id(refpart1)”> </hspot> </hsplink> <graphic graphicid=“GNBR01” linkURI=“atacgm1.cgm”> <grobject id=“grobj01” name=“part1”> </grobject> </graphic> Part No. 1 ...<pnr id=“refpart1”>Part1</pnr> is used to... XML Companion (atacgm1.xml) CGM file (atacgm1.cgm) XML Link file (hsplink1.xml) XML Document (atatext1.xml) Graphic-related info
Bidirectional link between two graphical objects in one graphic • CGM filename: atacgm1.cgm • XML companion file (atacgm1.xml) <graphic graphicid=“GNBR01” linkURI=“atacgm1.cgm”> <grobject id=“grobj01” name=“part1”></grobject> <grobject id=“grobj02” name=“part2”></grobject></graphic> • Xlink file (hsplink1.xml) <hsplink role=“hspot-hspot” show=“embed” behavior=“highlight”> <hspot href=“id(grobj01)” refgraphic=“GNBR01” title=“Part No. 1”> </hspot> <hspot href=“atacgm1.xml#id(grobj02)” title=“Part No. 2”> </hspot></hsplink>
Multidirectional link between text and graphic • CGM filenames: atacgm1.cgm, atacgm2.cgm • XML companion file 1 (atacgm1.xml) <graphic graphicid=“GNBR01” linkURI=“atacgm1.cgm”> <grobject id=“grobj01” name=“part1”></grobject></graphic> • XML companion file 2 (atacgm2.xml) <graphic graphicid=“GNBR02” linkURI=“atacgm2.cgm”> <grobject id=“grobj01” name=“part1”></grobject></graphic> • XML text file (atatext1.xml) ...<pnr id=“refpart1”>Part1</pnr> is used to... • Xlink file (hsplink2.xml) <hsplink role=“text-hspots”> <hspot href=“atacgm1.xml#id(grobj01)” title=“Part No. 1”></hspot> <hspot href=“id(grobj01)” refgraphic=“GNBR02” title=“Part No. 1”></hspot> <hspot href=“atatext1.xml#id(refpart1)”></hspot></hsplink>
Potential future extensions • Investigate application/extension of the DOM (Document Object Model) • Free graphics from textual components (annotations) • Links to and from resources in other multimedia formats such as video/audio, animations, 3D (VRML), and even simulations. • Establish links between authoring/illustration system (used-on lists) • Establish link to enterprise PDM system (used-on lists for parts)
Conclusion • Definition of generic element ”anchor” within text DTD’s is advised • XML companion file only a first attempt to integrate XML/CGM • More detail work necessary in the areas of • link management • link traversal • user interfaces • ATA GWG will work with this concept to enhance the ATA intelligent graphics model.