GML Dev Days, July 2002 Working with GML Application Schemas Milan Trnini}, Galdos Systems, Inc.

Slides:



Advertisements
Similar presentations
J0 1 Marco Ronchetti - Web architectures – Laurea Specialistica in Informatica – Università di Trento Java XML parsing.
Advertisements

DC2001, Tokyo DCMI Registry : Background and demonstration DC2001 Tokyo October 2001 Rachel Heery, UKOLN, University of Bath Harry Wagner, OCLC
OLAC Metadata Steven Bird University of Melbourne / University of Pennsylvania OLAC Workshop 10 December 2002.
BAH DAML Tools XML To DAML Query Relevance Assessor DAML XSLT Adapter.
Introduction to the BinX Library eDIKT project team Ted Wen Robert Carroll
Transparency No. 1 Java Collection API : Built-in Data Structures for Java.
OASIS OData Technical Committee. AGENDA Introduction OASIS OData Technical Committee OData Overview Work of the Technical Committee Q&A.
Service Description: WSDL COMP6017 Topics on Web Services Dr Nicholas Gibbins –
Yunling Wang VoIP Security COMS 4995 Nov 24, 2008 XCAP The Extensible Markup Language (XML) Configuration Access Protocol (XCAP)
XML Schema Heewon Lee. Contents 1. Introduction 2. Concepts 3. Example 4. Conclusion.
Forest Markup / Metadata Language FML
Microsoft Research March 20, 2000 A Programming Language for Developing Interactive Web Services Claus Brabrand BRICS, University of Aarhus, Denmark.
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Chapter 11 user support. Issues –different types of support at different times –implementation and presentation both important –all need careful design.
Introducing XML : Table of Contents 1. From HTML to XML 2. Well-Formed XML 3. Validity / DTDs 4. Encodings 5. XML Namespaces 6. XML Schema 7. XML Tools.
Semantics Static semantics Dynamic semantics attribute grammars
The Semantic Web – WEEK 4: RDF
Managing XML and Semistructured Data Lecture 12: XML Schema Prof. Dan Suciu Spring 2001.
XML Technology in E-Commerce
1 Web Data Management XML Schema. 2 In this lecture XML Schemas Elements v. Types Regular expressions Expressive power Resources W3C Draft:
XML: Styling and Transformation Dr Andy Evans. Multiple views Nice thing is that this data can be styled in lots of different ways using stylesheets.
SOAP Lee Jong-uk. Introduction What is SOAP? The features of SOAP The structure of SOAP SOAP exchange message model & message Examples of SOAP.
XML Flattened The lessons to be learned from XBRL.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Descriptions Robert Grimm New York University. The Final Assignment…  Your own application  Discussion board  Think: Paper summaries  Web cam proxy.
Descriptions Robert Grimm New York University. The Final Assignment…  Your own application  Discussion board  Think: Paper summaries  Time tracker.
© 2006 Pearson Addison-Wesley. All rights reserved4-1 Chapter 4 Data Abstraction: The Walls.
XML DOM and SAX Parsers By Omar RABI. Introduction to parsers  The word parser comes from compilers  In a compiler, a parser is the module that reads.
RDF Kitty Turner. Current Situation there is hardly any metadata on the Web search engine sites do the equivalent of going through a library, reading.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
XP New Perspectives on XML Tutorial 4 1 XML Schema Tutorial – Carey ISBN Working with Namespaces and Schemas.
Java Beans.
An Extension to XML Schema for Structured Data Processing Presented by: Jacky Ma Date: 10 April 2002.
Why XML ? Problems with HTML HTML design - HTML is intended for presentation of information as Web pages. - HTML contains a fixed set of markup tags. This.
Practical RDF Chapter 1. RDF: An Introduction
XML eXtensible Markup Language w3c standard Why? Store and transport data Easy data exchange Create more languages WSDL (Web Service Description Language)
Coverages and the DAP2 Data Model James Gallagher.
What is XML (Extensible Markup Language)? XML is basically a better comma delimited file. Example: Your client asks you to write a new reporting system.
Session IV Chapter 9 – XML Schemas
EuroRoadS for JRC Workshop Lars Wikström, Triona Editor of EuroRoadS deliverables D6.3, D6.6, D6.7.
INTRODUCTION TO JAVASCRIPT AND DOM Internet Engineering Spring 2012.
XML – An Introduction Structured Data Mark-up James McCartney CSCE 590, Cluster and Grid Computing.
FIMS v1.1 Version numbers in schema Richard Cartwright Quantel July 2013.
Recap Visual Perception and Data Visualization Types of Information Display Examples of Diagrams used for Data Display Planning Requirement for Data Visualization.
1 Tutorial 14 Validating Documents with Schemas Exploring the XML Schema Vocabulary.
Understanding Data Types and Collections Lesson 2.
XML eXtensible Markup Language. XML A method of defining a format for exchanging documents and data. –Allows one to define a dialect of XML –A library.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
ESDI Workshop on Conceptual Schema Languages and Tools
Learning to Share Meaning in a Multi-Agent System (Part I) Ganesh Padmanabhan.
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
Review of Paper: Johan Hjelm “Position dependent services using metadata profile matching” Youyong Zou Apr.15,2001.
Ordered Linked Lists using Abstract Data Types (ADT) in Java Presented by: Andrew Aken.
WIGOS Data model – standards introduction.
When we create.rtf document apart from saving the actual info the tool saves additional info like start of a paragraph, bold, size of the font.. Etc. This.
PRACTICAL KNOWLEDGE REPRESENTATION FOR THE WEB Frank van Harmelen Dieter Fensel AIFB Kim Kangil Structural Complexity Laboratory.
Working with XML. Markup Languages Text-based languages based on SGML Text-based languages based on SGML SGML = Standard Generalized Markup Language SGML.
AJAX and REST. Slide 2 What is AJAX? It’s an acronym for Asynchronous JavaScript and XML Although requests need not be asynchronous It’s not really a.
OWL Web Ontology Language Summary IHan HSIAO (Sharon)
 XML derives its strength from a variety of supporting technologies.  Structure and data types: When using XML to exchange data among clients, partners,
Semantic Interoperability in GIS N. L. Sarda Suman Somavarapu.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
Semantic metadata in the Catalogue Frédéric Houbie.
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 9 Web Services: JAX-RPC,
1 XML and XML in DLESE Katy Ginger November 2003.
Introduction toData structures and Algorithms
Searching Business Data with MOSS 2007 Enterprise Search
Data Modeling II XML Schema & JAXB Marc Dumontier May 4, 2004
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
New Perspectives on XML
Presentation transcript:

GML Dev Days, July 2002 Working with GML Application Schemas Milan Trnini}, Galdos Systems, Inc.

GML Dev Days, July 2002 Introduction Purpose of the experiment: Analyze whether working with GML application schemas is hard/easy/feasible. Application schema abstraction – what does it mean, what is its purpose? Different uses of GML application schema Information captured in GML application schemas. API for working with GML application schemas.

GML Dev Days, July 2002 GML Application Schemas Intention of GML is to be base for creating applications in different domains. This is achieved by GML and XMLSchema extensibility mechanisms. Example of GML extension mechanism: type information in tag name. GML occupies one level of abstraction. Application schema is built on top of it as another level.

GML Dev Days, July 2002 Feature Location Service Network Transportation Numbers Strings Logistical Utilities GML GML Application Schemas W3C Geometries Other types… Topology Other types…

GML Dev Days, July 2002 Feature Road Segment Intersection Numbers Strings Route finder GML Transportation Primitives and operations Multiple Application Layers W3C Geometries Other types… Topology Temporal Transportation Services Route Other … Event

GML Dev Days, July 2002 Class Hierarchy Road SegmentIntersection Feature Route Objects from one layer are used to compose or create objects in a higher layer. Use XML mechanisms: type extension substitution, sequencing, choices, etc. Use GML mechanisms: collections, associations, feature-property model, etc. Objects in different layers have different scope/meaning/semantics. Event Accident

GML Dev Days, July 2002 XML and GML Types , , … GML instance

GML Dev Days, July 2002 XML and GML Types We dont care about XMLSchema types. Element declarations are our GML types. GML application schema

GML Dev Days, July 2002 GML Types Names , , … GML instance

GML Dev Days, July 2002 GML Types Names GML types names in themselves do not mean anything!! GML application schema

GML Dev Days, July 2002 Applications and Schemas What do applications need from the schemas? A piece of semantics is needed in order to know what to do with the data. Not all of it. What is semantics? How do we find it? Set of base primitives used to compare artifacts and draw conclusions about them. Semantics in schemas: type hierarchy, model (feature – property), metadata.

GML Dev Days, July 2002 Captured knowledge The knowledge exists in the schemas. Different uses and types of the knowledge: Information about content or structure of types Information about types semantics – type hierarchy. Information from the GML model – we care about this Information from XMLSchema model - concerning schema validation

GML Dev Days, July 2002 Semantics Again – what do we need? Understanding of arbitrary schema? Understanding and processing of arbitrary features? Understanding always comes down to very simple comparisons of strings (or other types). Semantics by metadata – same thing.

GML Dev Days, July 2002 Schema Validator For this purpose all the information from the schema is needed, and it has to be interpreted correctly according to the XMLSchema specification. XML Schema specification is fairly complex. Validating schemas means implementing all details from XML Schema Specification (example: derivation by restriction) Not an easy task. Performance issues are complex (depends on the application where validator is used).

GML Dev Days, July 2002 GML Application Schema Parser (Content Examiner) Easier task than validating. Some assumptions can be made: A client application will get a valid data If that is not the case, client can only report the error, no need to analyze it according to the XMLSchema specification. Client is interested only in content, if available. No need to implement the whole specification – it is ok to assume and hardcode some things. Errors might not be very precise.

GML Dev Days, July 2002 Uses of GML Application Schema Parser In all standard applications that use GML data such as map portrayal applications, geocoders, gazetteers, etc. GML data editors that provide content guidance. GML application schema editors that provide content guidance. Applications for mapping of different data models. Hard to remodel existing schemas.

GML Dev Days, July 2002 Code Example Vector getFeatures(Document gmlData) { Vector result; NodeList nodes = gmlData.getDocumentElement().getChildren(); for (int index = 0; index < nodes.getLength(); index++) { Node property = nodes.get(index); boolean isFeatureMember = _schemaParser.isFeatureMember(property); if (isFeatureMember == false) continue; Node value = property.getFirstChild(); boolean isFeature = _schemaParser.isFeature(value); if (isFeature == true) result.add(value); } return result; } boolean isFeature(Node node) { return ((getSubstitutionGroup(node) == _Feature) && (getBaseType == AbstractFeatureType)); }

GML Dev Days, July 2002 Multiple Application Layers This means only little more work for the parser – complexity is linear! , , …

GML Dev Days, July 2002 GML Application Schema Parser API Type functions isFeature isFeatureMember isGeometry isOfType etc. Content retrieval getFeatures getGeometry getProperties allowedFeatures allowedProperties allowedGeometries etc. Miscellaneous getCardinality etc.

GML Dev Days, July 2002 GML Level of Abstraction Work with features, geometries, feature members etc. Not concerned about XMLSchema types, elements, etc. Use the same paradigm and model with different data description languages (RDF, …).

GML Dev Days, July 2002 Performance Verbosity of XML/GML. Use of existing tools. Schema parser data model – new DOM, tables and arrays. Solutions overlap with the ones regarding any XML processing. Not a bigger issue than processing of instance documents (example - processing of Simple Xlinks).

GML Dev Days, July 2002 Summary Extensibility and semantics on the level of the application schemas achieved using simple methods – type extension. Validator needs to perform deep and extensive analysis of the schema – it has to follow the specification which can be (and often is) complex. Content examiner needs to follow type hierarchy, metadata information etc., which is simple – comparable to processing instance documents. Physical complexity of schemas is not the same as the complexity of XMLSchema specification and except for the basics does not mirror it.

GML Dev Days, July 2002 References XMLSchema specification GML 2.1 specification Schema Infoset GML model (specification, papers) GML4J