[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [emergency] CAP 1.2 and related issues.
> Secondly, if you take a look at the change proposed by Neil Bourgeois that he wants to make in the schema used by > DM-OPEN, that change actually would result in messages that validate to the currently proposed CAP 1.2 > specification!!!!!! So why change it? Gary I certainly agree with your comments about scope for 1.2, but I do not agree that Neil's proposal is equivalent to what is currently in the draft of 1.2. Under Neil's proposal, a signature would look like this, <alert xmlns="urn:oasis:names:tc:emergency:cap:1.1"> <identifier>Test-1</identifier> ... <Signature> <!-- Additional isolating element --> <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> <SignedInfo> ... Versus the current 1.2 draft and as outlined in CAP 1.1 also, <alert xmlns="urn:oasis:names:tc:emergency:cap:1.1"> <identifier>Test-1</identifier> ... <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"> <SignedInfo> ... Neil's proposal would not validate according to 1.1 nor 1.2 as currently drafted. BTW did you get a chance to try the <import> version of the schema that I sent? However as I suggested yesterday, it appears the DM-OPEN implementation difficulties stem from having the two <any> elements to support signatures and encryption right beside each other. Since most of the group is clearly agreed that encrypting a standalone CAP message is "problematic" and that encryption should be handled using EDXL or at the transport level, then a schema that supported ONLY signatures would look like this. With just a single <any> element, your DM-OPEN tools shouldn't run into any further problems. <?xml version = "1.0" encoding = "UTF-8"?> <!-- Copyright 2009 (c) 2009 Oasis Open --> <schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "urn:oasis:names:tc:emergency:cap:1.2" xmlns:cap = "urn:oasis:names:tc:emergency:cap:1.2" xmlns:xs = "http://www.w3.org/2001/XMLSchema" elementFormDefault = "qualified" attributeFormDefault = "unqualified" version = "1.2"> <element name = "alert"> <annotation> <documentation>CAP Alert Message (version 1.2)</documentation> </annotation> <complexType> <sequence> <element name = "identifier" type = "xs:string"/> <element name = "sender" type = "xs:string"/> <element name = "sent"> <simpleType> <restriction base = "xs:dateTime"> <pattern value = "\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d[-,+]\d\d:\d\d"/> </restriction> </simpleType> </element> <element name = "status"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Actual"/> <enumeration value = "Exercise"/> <enumeration value = "System"/> <enumeration value = "Test"/> <enumeration value = "Draft"/> </restriction> </simpleType> </element> <element name = "msgType"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Alert"/> <enumeration value = "Update"/> <enumeration value = "Cancel"/> <enumeration value = "Ack"/> <enumeration value = "Error"/> </restriction> </simpleType> </element> <element name = "source" type = "xs:string" minOccurs = "0"/> <element name = "scope"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Public"/> <enumeration value = "Restricted"/> <enumeration value = "Private"/> </restriction> </simpleType> </element> <element name = "restriction" type = "xs:string" minOccurs = "0"/> <element name = "addresses" type = "xs:string" minOccurs = "0"/> <element name = "code" type = "xs:string" minOccurs = "0" maxOccurs = "unbounded"/> <element name = "note" type = "xs:string" minOccurs = "0"/> <element name = "references" type = "xs:string" minOccurs = "0"/> <element name = "incidents" type = "xs:string" minOccurs = "0"/> <element name = "info" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "language" type = "xs:language" default = "en-US" minOccurs = "0"/> <element name = "category" maxOccurs = "unbounded"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Geo"/> <enumeration value = "Met"/> <enumeration value = "Safety"/> <enumeration value = "Security"/> <enumeration value = "Rescue"/> <enumeration value = "Fire"/> <enumeration value = "Health"/> <enumeration value = "Env"/> <enumeration value = "Transport"/> <enumeration value = "Infra"/> <enumeration value = "CBRNE"/> <enumeration value = "Other"/> </restriction> </simpleType> </element> <element name = "event" type = "xs:string"/> <element name = "responseType" minOccurs = "0" maxOccurs = "unbounded"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Shelter"/> <enumeration value = "Evacuate"/> <enumeration value = "Prepare"/> <enumeration value = "Execute"/> <enumeration value = "Avoid"/> <enumeration value = "Monitor"/> <enumeration value = "Assess"/> <enumeration value = "AllClear"/> <enumeration value = "None"/> </restriction> </simpleType> </element> <element name = "urgency"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Immediate"/> <enumeration value = "Expected"/> <enumeration value = "Future"/> <enumeration value = "Past"/> <enumeration value = "Unknown"/> </restriction> </simpleType> </element> <element name = "severity"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Extreme"/> <enumeration value = "Severe"/> <enumeration value = "Moderate"/> <enumeration value = "Minor"/> <enumeration value = "Unknown"/> </restriction> </simpleType> </element> <element name = "certainty"> <simpleType> <restriction base = "xs:string"> <enumeration value = "Observed"/> <enumeration value = "Likely"/> <enumeration value = "Possible"/> <enumeration value = "Unlikely"/> <enumeration value = "Unknown"/> </restriction> </simpleType> </element> <element name = "audience" type = "xs:string" minOccurs = "0"/> <element name = "eventCode" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element ref = "cap:valueName"/> <element ref = "cap:value"/> </sequence> </complexType> </element> <element name = "effective" minOccurs = "0"> <simpleType> <restriction base = "xs:dateTime"> <pattern value = "\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d[-,+]\d\d:\d\d"/> </restriction> </simpleType> </element> <element name = "onset" minOccurs = "0"> <simpleType> <restriction base = "xs:dateTime"> <pattern value = "\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d[-,+]\d\d:\d\d"/> </restriction> </simpleType> </element> <element name = "expires" minOccurs = "0"> <simpleType> <restriction base = "xs:dateTime"> <pattern value = "\d\d\d\d-\d\d-\d\dT\d\d:\d\d:\d\d[-,+]\d\d:\d\d"/> </restriction> </simpleType> </element> <element name = "senderName" type = "xs:string" minOccurs = "0"/> <element name = "headline" type = "xs:string" minOccurs = "0"/> <element name = "description" type = "xs:string" minOccurs = "0"/> <element name = "instruction" type = "xs:string" minOccurs = "0"/> <element name = "web" type = "xs:anyURI" minOccurs = "0"/> <element name = "contact" type = "xs:string" minOccurs = "0"/> <element name = "parameter" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element ref = "cap:valueName"/> <element ref = "cap:value"/> </sequence> </complexType> </element> <element name = "resource" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "resourceDesc" type = "xs:string"/> <element name = "mimeType" type = "xs:string"/> <element name = "size" type = "xs:integer" minOccurs = "0"/> <element name = "uri" type = "xs:anyURI" minOccurs = "0"/> <element name = "derefUri" type = "xs:string" minOccurs = "0"/> <element name = "digest" type = "xs:string" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "area" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "areaDesc" type = "xs:string"/> <element name = "polygon" type = "xs:string" minOccurs = "0" maxOccurs = "unbounded"/> <element name = "circle" type = "xs:string" minOccurs = "0" maxOccurs = "unbounded"/> <element name = "geocode" minOccurs = "0" maxOccurs = "unbounded"> <complexType> <sequence> <element ref = "cap:valueName"/> <element ref = "cap:value"/> </sequence> </complexType> </element> <element name = "altitude" type = "xs:decimal" minOccurs = "0"/> <element name = "ceiling" type = "xs:decimal" minOccurs = "0"/> </sequence> </complexType> </element> </sequence> </complexType> </element> <any minOccurs = "0" maxOccurs = "unbounded" namespace = "http://www.w3.org/2000/09/xmldsig#" processContents = "lax"/> </sequence> </complexType> </element> <element name = "valueName" type = "xs:string"/> <element name = "value" type = "xs:string"/> </schema> -- jake@jpw.biz --
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]