Optimising XML Schema for IODEF Data model

Slides:



Advertisements
Similar presentations
BAH DAML Tools XML To DAML Query Relevance Assessor DAML XSLT Adapter.
Advertisements

What is XML? a meta language that allows you to create and format your own document markups a method for putting structured data into a text file; these.
1 Web Data Management XML Schema. 2 In this lecture XML Schemas Elements v. Types Regular expressions Expressive power Resources W3C Draft:
SDPL 2003Notes 2: Document Instances and Grammars1 2.5 XML Schemas n A quick introduction to XML Schema –W3C Recommendation, May 2, 2001: »XML Schema Part.
A Simple Schema Design. First Schema Design Being a Dog Is a Full-Time Job Charles M. Schulz Snoopy Peppermint Patty extroverted beagle Peppermint.
XML Schema Definition Language
XML Security in IODEF INCH WG, IETF56 March 19, 2003 Yuri Demchenko.
Introduction to XML This material is based heavily on the tutorial by the same name at
Lecture 15 XML Validation. a simple element containing text attribute; attributes provide additional information about an element and consist of a name.
SDPL 2002Notes 2: Document Instances and Grammars1 2.5 XML Schemas n A quick introduction to XML Schema –W3C Recommendation, May 2, 2001: »XML Schema Part.
IODEF Design principles and IODEF Data Model Overview IODEF Data Model and XML DTD pre-draft Version 0.03 TERENA IODEF WG Yuri Demchenko.
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.
Scientific Markup Languages Birds of a Feather A 10-Minute Introduction to XML Timothy W. Cole Mathematics Librarian & Professor of.
CSE4500 Information Retrieval Systems XML Schema – Part 1.
School of Computing and Management Sciences © Sheffield Hallam University To understand the Oracle XML notes you need to have an understanding of all these.
An Introduction to XML Presented by Scott Nemec at the UniForum Chicago meeting on 7/25/2006.
 XML is designed to describe data and to focus on what data is. HTML is designed to display data and to focus on how data looks.  XML is created to structure,
Intro. to XML & XML DB Bun Yue Professor, CS/CIS UHCL.
Session IV Chapter 9 – XML Schemas
Softsmith Infotech XML. Softsmith Infotech XML EXtensible Markup Language XML is a markup language much like HTML Designed to carry data, not to display.
Beginning XML 4th Edition. Chapter 5: XML Schemas.
SDPL 2005Notes 2.5: XML Schemas1 2.5 XML Schemas n Short introduction to XML Schema –W3C Recommendation, 1 st Ed. May, 2001; 2 nd Ed. Oct, 2004: »XML Schema.
New Perspectives on XML, 2nd Edition
 XML DTD and XML Schema Discussion Sessions 1A and 1B Session 2.
An OO schema language for XML SOX W3C Note 30 July 1999.
Relations between IODEF and IDMEF Based on IDMEF XML DTD and Data Model Analysis TERENA ITDWG IODEF Editorial Group Yuri Demchenko.
Sheet 1XML Technology in E-Commerce 2001Lecture 2 XML Technology in E-Commerce Lecture 2 Logical and Physical Structure, Validity, DTD, XML Schema.
XML 2nd EDITION Tutorial 4 Working With Schemas. XP Schemas A schema is an XML document that defines the content and structure of one or more XML documents.
1 Tutorial 14 Validating Documents with Schemas Exploring the XML Schema Vocabulary.
XML Schema. Why Validate XML? XML documents can generally have any structure XML grammars define specific document structures Validation is the act of.
Processing of structured documents Spring 2003, Part 3 Helena Ahonen-Myka.
XML A Language Presentation. Outline 1. Introduction 2. XML 2.1 Background 2.2 Structure 2.3 Advantages 3. Related Technologies 3.1 DTD 3.2 Schemas and.
Web Technologies Lecture 4 XML and XHTML. XML Extensible Markup Language Set of rules for encoding a document in a format readable – By humans, and –
Optimising XML Schema for IODEF Data model INCH WG, IETF57 July 16, 2003 Yuri Demchenko.
Martin Kruliš by Martin Kruliš (v1.1)1.
XML Validation II Advanced DTDs + Schemas Robin Burke ECT 360.
XML Extensible Markup Language
XML Notes taken from w3schools. What is XML? XML stands for EXtensible Markup Language. XML was designed to store and transport data. XML was designed.
CITA 330 Section 4 XML Schema. XML Schema (XSD) An alternative industry standard for defining XML dialects More expressive than DTD Using XML syntax Promoting.
1 SIP Recording Metadata (draft-ietf-siprec-metadata-16) November 2014 IETF 91 meeting Presenter: Paul Kyzivat Authors: Ram Mohan R, R Parthasarathi, Paul.
4 Copyright © 2004, Oracle. All rights reserved. Validating XML by Using XML Schema.
SDPL : XML Schemas1 2.5 XML Schemas n Short introduction to XML Schema –W3C Recommendation, 1 st Ed. May, 2001; 2 nd Ed. Oct, 2004: »XML Schema.
Extensible Markup Language (XML) Pat Morin COMP 2405.
XML Schemas Dr. Awad Khalil Computer Science Department AUC.
XML Schema.
ACG 4401 XML Schemas XML Namespaces XLink.
Visual Signature Profile OASIS - DSS-X
ACG 4401 XML Schemas XML Namespaces XLink.
CMP 051 XML Introduction Session IV
Lecture 9 XML & its applications
XML in Web Technologies
Security Token Service (STS) Status Update
Data Modeling II XML Schema & JAXB Marc Dumontier May 4, 2004
Discussion on XSD open issues
XML Validation III Schemas
Database Processing with XML
ISSGC’05 XML Schemas (XSD)
دانشكده مهندسي كامپيوتر
CMP 051 XML Introduction Session III
XML Technologies X-Schema.
Introduction to XML Extensible Markup Language
Introduction to XML Extensible Markup Language
CSE591: Data Mining by H. Liu
Lecture 9 XML & its applications
Lecture 4 Introduction to XML Extensible Markup Language
More XML XML schema, XPATH, XSLT
Quick Introduction to DFDL
XML: The new standard -Eric Taylor.
XML Schema Diyar A. Abdulqder
Presentation transcript:

Optimising XML Schema for IODEF Data model INCH WG, IETF57 July 16, 2003 Yuri Demchenko <demch@NLnetLabs.nl>

Outlines Motivation for moving to Schema definition Changes and Optimisations to IODEF elements semantics Extra features: XML Signature and Multilingual text type March 19, 2003. San Francisco XML Security

Motivation for moving to XML Schema DTD is document-oriented Like HTML Schema is data-oriented More object oriented Integrated into development tools Easier maintenance (validation, modification, documentation - using tools) Enabling other useful features XML Signature SAML XPath, XSL and XSLT, XLink, XPointer March 19, 2003. San Francisco XML Security

Semantics change for some attributes (1) Due to more complex way of naming attributes in the schema, introduced and redefined few attributes: introduced Contact.contactrole was just “role” defined locally for the Contact element introduced Contact.contacttype was just “type” defined locally for the Contact element cloned attribute Expectation.priority from attvals.severity Was priority %attvals.severity; #IMPLIED renamed yesno -> spoofed renamed Expectation.category -> expectation and attvals.expectation Was just “category” defined as attvals.expectations March 19, 2003. San Francisco XML Security

Semantics change for some attributes (2) Attribute dtype is used for both AdditionalData and RecordItem Was adtype and dtype Problems with IDMEF compatibility? Data types for Telephone and Fax remains “string” Mistakenly was defined in my early comments as "decimal" March 19, 2003. San Francisco XML Security

Container for Signature Added container element Signatures to top level class IODEF-Document May contain multiple signatures ds:Signature with imported namespace <xs:element name="IODEF-Document">     <xs:complexType>      <xs:sequence>      <xs:element ref="Incident" maxOccurs="unbounded"/>      <xs:element ref="Signatures"/>      </xs: sequence>      <xs:attribute name="version" type="xs:string" fixed="0.1"/>     </xs:complexType> </xs:element> <xs:element name="Signatures">     <xs:complexType>      <xs:sequence>       <xs:element ref="ds:Signature" maxOccurs="unbounded"/>      </xs:sequence>     </xs:complexType> </xs:element> March 19, 2003. San Francisco XML Security

Simplified definition: elements Node, Service, UserId <!ELEMENT Node (name?, Address*, DateTime?, Location?, NodeRole*)> <!ELEMENT Node (((name | Address), Address*), DateTime?, name?, Address*, Location?, NodeRole*)> (domain) name of a node is one but optional; IP Addresses may be many <!ELEMENT Service (((name?, port) | portlist), protocol?, SNMPService?, WebService?)> <!ELEMENT Service (((name | port | (name, port)) | portlist), protocol?, SNMPService?, WebService?)> port primary identified by number, optionally - by name this simplified definition will help to avoid warnings in the future from too strict validators and parsers this definition will also validate initial IDMEF definition and XML text <!ELEMENT UserId ((number, name?) | (name, number?))> Old definition (name | number | (name, number)) generate warning of non-deterministic Schema Other possibility - (name?, number?) March 19, 2003. San Francisco XML Security

New data types Some elements are defined not as a complexElement but via complexType to allow reuse and easier redefine some complexTypes, in particular: AdditionalDataType IncidentIDType DateTimeType DescriptionType MultilingTextType TextAbstractType March 19, 2003. San Francisco XML Security

MultilingualTextType and TextAbstractType To mark-up multilingual text preservation features, introduced two new classes: TextAbstractType to carry language attribute MultilingTextType to describe possible multilingual text transformation by Transform class imported from XMLSig Schema Introduced new element "Name" for Contact class instead of more simple "name" Name defined via MultilingTextType <xs:element name="Name" type="MultilingTextType"/> March 19, 2003. San Francisco XML Security

ds:Transform element <xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="Transforms" type="TransformsType"/> <xs:complexType name="TransformsType"> <xs:sequence> <xs:element ref="Transform" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <xs:element name="Transform" type="TransformType"/> <xs:complexType name="TransformType" mixed="true"> <xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:any namespace="##other" processContents="lax"/> <xs:element name="XPath" type="string"/> ## (1,1) elements from (0,unbounded) namespaces ## </xs:choice> <xs:attribute name="Algorithm" type="xs:anyURI" use="required"/> March 19, 2003. San Francisco XML Security

Issue to discuss: Preserving multilingual text Measures to preserve multilingual non-UTF-8 text look complex, so they better will be limited to elements which are really sensitive to non-UTF-8 encoding: Description Name PostalAddress Impact Location IDN (internationalised domain name) – required to use UTF-8 or other derived encoding. March 19, 2003. San Francisco XML Security

Preserving ML text - usage Two cases are possible when using XML Signature: Transform to UTF-8 all document and sign the document Use text transformation to keep multilingual text in binary form and sign the document In both cases you need to make conversion to display text on user machine that doesn’t use/handle UTF-8/Unicode March 19, 2003. San Francisco XML Security

Future steps Make changes to current DTD-01 Include Schema into next IODEF draft? March 19, 2003. San Francisco XML Security