From: http://www.ietf.org/internet-drafts/draft-cuellar-geopriv-lo-ml-00.txt Title: Geopriv Location Object Markup Language Reference: draft-cuellar-geopriv-lo-ml-00.txt ---------------------------------------------------------------------------- Internet Draft J. Cuellar Document: draft-cuellar-geopriv-lo-ml-00.txt Siemens AG C. Guenther Siemens AG Expires in six months June 2003 Geopriv Location Object Markup Language < draft-cuellar-geopriv-lo-ml-00.txt> Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Copyright Notice Copyright (C) The Internet Society (2003). All Rights Reserved. Abstract This draft presents a foundational version of a markup language suitable for representing the Geopriv Location Object (LO). This language is defined by means of an XML schema. Cuellar, Guenther 1 Geopriv Location Object Markup Language June 2003 Table of Contents 1. Introduction...................................................2 2. Geopriv LO Markup Language.....................................3 2.1. Overview..................................................3 2.2. Schema Element Start Tag..................................4 2.3. LO Element................................................4 2.4. Target Element............................................5 2.5. Device Element............................................6 2.6. RM Element................................................7 2.7. LR Element................................................9 2.8. LR Credential Element.....................................9 2.9. LR Proof of Possession of Credential Element..............9 2.10. Rule Element.............................................9 2.11. Location Element.........................................9 2.12. Time to Live Element.....................................9 3. XML Schema Listing.............................................9 4. XML LO Instance...............................................19 5. Note on Validation............................................21 6. References....................................................22 7. Author's Addresses............................................22 8. Full Copyright Statement......................................22 1. Introduction This draft aims at providing a foundation for a markup language that is suitable for representing all data fields of the Geopriv Location Object (LO) as required in [2]. We present and illustrate an XML schema defining such a markup language. Up to now, we have concentrated on the question of how to represent the required data by means of an XML language, only touching the security and privacy issues concerning the LO. Even at this early stage of developing a suitable Geopriv LO data format, it has become very clear that the Geopriv Working Group has to arrive at more explicit descriptions of the content of required data fields in order to allow for precise definitions of appropriate LO data formats. To give just one example, the Geopriv Working Group should explicitly determine which types of Location Recipient (LR) Credentials are to be supported. Therefore, we shall also utilize this draft to compile a list of general open issues that must be solved by the Geopriv Working Group in order to be able to complete its work successfully. These general open issues are entirely independent of a particular LO data format (such as XML in case of this draft), but their solution is simply a prerequisite to any sensible definition of such a data format. Additionally, we shall collect open issues that are related to the definition of an XML LO. Cuellar, Guenther 2 Geopriv Location Object Markup Language June 2003 Based on the solutions of the general and XML related open issues, future versions of this draft will make the LO markup language introduced in this draft more precise in terms of representing identity, privacy policy and location information. We will investigate how security and privacy requirements on the LO can be satisfied by means of, for instance, the XML Signature and XML Encryption languages, the XML Access Control Markup Language (XACML) and the XML Key Management Specification (XKMS). In addition, we will make proposals how this XML LO can be bound to different Using Protocols. 2. Geopriv LO Markup Language 2.1. Overview The XML schema listed completely in chapter 3 specifies an XML language that allows for the following top-level XML elements: - LO: comprises all of the subsequent elements, the only mandatory of which is the Target element while all other elements are optional. - Target: contains an identifier for the Target which can be of non- anonymous, anonymous or of undetermined type. - Device: contains an identifier for the Device which can be a phone number, an IP address, or of anonymous or undetermined type. - RM: contains an identifier for the Rule Maker (RM) which can be of non-anonymous, anonymous or of undetermined type. - LR: contains an identifier of the Location Recipient (LR) which can be of non-anonymous, anonymous or of undetermined type; can also provide the information whether this identifier is a single or multi cast identifier. - LR Credential: contains a credential of the Location Recipient (LR). - LR Proof of Possession of Credential: contains the data that allows for verifying that the Location Recipient (LR) is in fact in possession of a certain credential. - Rule: contains an URI of an Applicable Rule, a Limited Rule or both. - Location: contains one or more Location Information child elements each of which can be composed of one or more Location Representation child elements and a Sighting Time element. Motion and Direction Vector as well as Precision and Confidence elements are also included here. - Time to Live: contains the point of time until when Location Information can be considered current. Cuellar, Guenther 3 Geopriv Location Object Markup Language June 2003 Subsequent paragraphs illustrate the corresponding LO markup language in greater detail. 2.2. Schema Element Start Tag As usual, the schema element start tag defines basic properties of the corresponding XML language (the line numbers are, of course, not part of the XML schema, but merely for easier referencing): 1: In line 4, the W3C schema language namespace "http://www.w3.org/2001/ XMLSchema" is linked to the prefix "xs". In line 3, the prefix "gplo", which stands for "Geopriv LO", is associated to the namespace "urn:ietf:geopriv:lo:0.0.4". This URI also defines the target namespace of this schema (line 2). The value of the attribute "version" indicates a (fictive) version number of this schema and the corresponding XML language. 2.3. LO Element The LO element is the element of highest level within the LO markup language. It is defined as follows: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: Thus, each valid LocationObject element can be composed of the child elements "Target" (line 11), ..., and "TimeToLive" (line 19). The Cuellar, Guenther 4 Geopriv Location Object Markup Language June 2003 Target element is the only child element of the LocationObject element that is mandatory. Each other child element is optional and can occur at most once; the order of occurrence is arbitrary (xs:all, line 10). Open Issue 1 (general): Which of the required LO data fields listed in [2] shall be mandatory to the LO? 2.4. Target Element In line 11, the definition of the Target element is referenced to the one given below. In essence, the Target element has a child element TargetIdentity and a grandchild element TargetIdentifier whose content is of type "xs:string", and which can be equipped with the optional attributes "IdentifierType" and "NameSpace". Permitted values of the IdentifierType attribute are "NonAnonymous", "Anonymous" and "Any". The latter attribute value might indicate an undetermined or unknown or concealed type of Target identifier. 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: Cuellar, Guenther 5 Geopriv Location Object Markup Language June 2003 50: 51: 52: 53: 54: A simple instance of the Target element definition could look like as follows: ginefohcsT sennaH Line 52 declares the attribute NameSpace which is optional to the TargetIdentifier element, and whose value must be an URI. In conjunction with an IdentifierType attribute value "Anonymous", this attribute could be used to point to a set of Identifiers from which the anonymous Target identifier, i.e. the content of the TargetIdentifier element, had been taken. Open Issue 2 (XML): Pointing to a set of identifiers by means of an URI - is this an appropriate mechanism for handling anonymous identifiers? Line 29 in combination with line 27 allows the TargetIdentifier element to be substituted by any other element defined within a namespace different from the namespace of this schema. The purpose of this mechanism is to support other identity providing data formats such as specified by the Liberty Alliance Project, for example. Open Issue 3 (general): Which identity providing data formats shall be supported by the Geopriv LO? 2.5. Device Element The definition of the Device element is quite similar to the definition of the Target element - of course with the exception that the IdentifierType attribute of the DeviceIdentifier element can have the values "PhoneNumber", "IPAddress", "Anonymous" and "Any": 55: 56: 57: 58: Cuellar, Guenther 6 Geopriv Location Object Markup Language June 2003 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: An example of a Device element complying with this syntax is: 017167239870 Open Issue 4 (general): Which types of Devices and Device identifiers shall be supported by the LO? 2.6. RM Element Cuellar, Guenther 7 Geopriv Location Object Markup Language June 2003 Up to now, the RM element is defined in a way that allows for representing a non-anonymous, anonymous or undetermined RM identifier, similar to the Target element. This, of course, will not be sufficient in a final version of this markup language: additional features will have to be specified in order to be able to satisfy the privacy requirements on the LO. 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: An example of a RuleMaker element could be: Cuellar, Guenther 8 Geopriv Location Object Markup Language June 2003 Siemens AG 2.7. LR Element 2.8. LR Credential Element 2.9. LR Proof of Possession of Credential Element 2.10. Rule Element 2.11. Location Element 2.12. Time to Live Element 3. XML Schema Listing This section contains a complete listing of the XML schema that has been illustrated in previous sections. The next section provides a simple XML LO instance document that is valid with respect to this schema. Cuellar, Guenther 9 Geopriv Location Object Markup Language June 2003 Cuellar, Guenther 10 Geopriv Location Object Markup Language June 2003 Cuellar, Guenther 11 Geopriv Location Object Markup Language June 2003 Cuellar, Guenther 13 Geopriv Location Object Markup Language June 2003 Cuellar, Guenther 16 Geopriv Location Object Markup Language June 2003 Cuellar, Guenther 17 Geopriv Location Object Markup Language June 2003 Cuellar, Guenther 18 Geopriv Location Object Markup Language June 2003 4. XML LO Instance To give a preliminary impression of how an XML LO complying with the schema listed in section 3 could look like, this section provides such an XML instance document. It can be validated against this schema (see section 5). ginefohcsT sennaH 017167239870 Cuellar, Guenther 19 Geopriv Location Object Markup Language June 2003 Siemens AG CT IC 3 Mobile Security Team ... Challenge-Response executed successfully Dirk Kroeselberg has no permission to see my location. (Limited Rule Language needs to be defined.) -48 8 23 Cuellar, Guenther 20 Geopriv Location Object Markup Language June 2003 11 34.4667 521.27 58.3 95.0 Germany Bavaria Munich Leopoldstrasse 6 +01:00 2003-07-14T20:12:34+01:00 ... ... 2003-07-14T20:17:34+01:00 5. Note on Validation We have validated the XML LO listed in section 4 and other instance documents against the schema listed in section 3 using the XML Schema Validator (XSV) and the Apache XML projectĘs Xerces2-J parser. XSV and Xerces2-J are available at http://www.ltg.ed.ac.uk/~ht/xsv-status.html and http://xml.apache.org/xerces2-j/index.html, respectively. If you store the schema as "gploml004.xsd" and the XML LO as "gploml004.xml" (say) in the same directory, then the commands xsv gploml004.xml gploml004.xsd Cuellar, Guenther 21 Geopriv Location Object Markup Language June 2003 and java dom.Writer -v -s gploml004.xml, respectively, should not produce any error messages. 6. References [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [2] Cuellar, J., Morris, J.B., Mulligan D., Peterson, J., Polk, J., "Geopriv requirements", Internet Draft, draft-ietf-geopriv- reqs-03.txt, March 2003. 7. Author's Addresses Jorge R Cuellar Siemens AG Corporate Technology CT IC 3 81730 Munich Email: jorge.cuellar@siemens.com Germany Christian Guenther Siemens AG Corporate Technology CT IC 3 81730 Munich Email: christian.guenther@siemens.com Germany 8. Full Copyright Statement Copyright (C) The Internet Society (2003). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. Cuellar, Guenther 22 Geopriv Location Object Markup Language June 2003 The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Cuellar, Guenther 23