mirror of
https://github.com/moparisthebest/xeps
synced 2024-11-24 10:12:19 -05:00
ProtoXEP geoloc-dataform v0.0.2: updates per council requests
This commit is contained in:
parent
d161f50bb4
commit
a9da7f313b
@ -7,7 +7,7 @@
|
|||||||
<xep>
|
<xep>
|
||||||
<header>
|
<header>
|
||||||
<title>Data Forms Geolocation Element</title>
|
<title>Data Forms Geolocation Element</title>
|
||||||
<abstract>This specification defines an XMPP protocol extension for including geolocation data in XEP-0004 data forms.</abstract>
|
<abstract>This specification defines an XMPP protocol extension for including geolocation data in <cite>XEP-0004</cite> <cite>Data Forms</cite>.</abstract>
|
||||||
&LEGALNOTICE;
|
&LEGALNOTICE;
|
||||||
<number>xxxx</number>
|
<number>xxxx</number>
|
||||||
<status>ProtoXEP</status>
|
<status>ProtoXEP</status>
|
||||||
@ -17,6 +17,7 @@
|
|||||||
<spec>XMPP Core</spec>
|
<spec>XMPP Core</spec>
|
||||||
<spec>XEP-0004</spec>
|
<spec>XEP-0004</spec>
|
||||||
<spec>XEP-0080</spec>
|
<spec>XEP-0080</spec>
|
||||||
|
<spec>XEP-0122</spec>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
<supersedes>None</supersedes>
|
<supersedes>None</supersedes>
|
||||||
<supersededby>None</supersededby>
|
<supersededby>None</supersededby>
|
||||||
@ -30,6 +31,14 @@
|
|||||||
<email>laukner@gmail.com</email>
|
<email>laukner@gmail.com</email>
|
||||||
<jid>laukner@jabber.org</jid>
|
<jid>laukner@jabber.org</jid>
|
||||||
</author>
|
</author>
|
||||||
|
<revision>
|
||||||
|
<version>0.0.2</version>
|
||||||
|
<date>2014-06-21</date>
|
||||||
|
<initials>ml</initials>
|
||||||
|
<remark>
|
||||||
|
<p>Initial version, borrowing from XEP-0221 and XEP-0137.</p>
|
||||||
|
</remark>
|
||||||
|
</revision>
|
||||||
<revision>
|
<revision>
|
||||||
<version>0.0.1</version>
|
<version>0.0.1</version>
|
||||||
<date>2014-06-11</date>
|
<date>2014-06-11</date>
|
||||||
@ -40,9 +49,16 @@
|
|||||||
</revision>
|
</revision>
|
||||||
</header>
|
</header>
|
||||||
<section1 topic="Introduction" anchor="intro">
|
<section1 topic="Introduction" anchor="intro">
|
||||||
<p>In certain protocols that make use of &xep0004;, it can be helpful to include geolocation data. One example of such a "using protocol" is &xep0346;. This document defines a method for including geolocation data in a data form for something you manage and want to publish. This XEP leaves it open to developers how such a <geoloc/> form element will be rendered; possibilities might include editing Latitude and Longitude manually or through a rendered map.</p>
|
<p>In certain protocols that make use of &xep0004;, it can be helpful to include geolocation data. One example of such a "using protocol" is &xep0346;. This document defines a method for including geolocation data in a <cite>Data Form</cite> for something you manage and want to publish. This XEP leaves it open to developers how such a <geoloc/> form element will be rendered; possibilities might include editing Latitude and Longitude manually or through a rendered map.</p>
|
||||||
</section1>
|
</section1>
|
||||||
<section1 topic="Geolocation Element" anchor="geolocation">
|
<section1 topic='Requirements' anchor='requirements'>
|
||||||
|
<p>This proposal addresses the following requirements:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Integrate geolocation data with &xep0004;.</li>
|
||||||
|
<li>Allow a potential receiver (rather than the sender) to validate geolocation data.</li>
|
||||||
|
</ul>
|
||||||
|
</section1>
|
||||||
|
<section1 topic="Integrate Geolocation Element" anchor="geolocation">
|
||||||
<p>The root element for geolocation data is <geoloc/> as defined in &xep0080;. The information is structured by means of a <geoloc /> element that is qualified by the 'http://jabber.org/protocol/geoloc' namespace. The <geoloc/> element MUST be contained within a <field/> element qualified by the 'jabber:x:data' namespace.</p>
|
<p>The root element for geolocation data is <geoloc/> as defined in &xep0080;. The information is structured by means of a <geoloc /> element that is qualified by the 'http://jabber.org/protocol/geoloc' namespace. The <geoloc/> element MUST be contained within a <field/> element qualified by the 'jabber:x:data' namespace.</p>
|
||||||
<p>The following example is provided only for the purpose of illustration; consult the specifications for using protocols (e.g., &xep0080;) to see canonical examples.</p>
|
<p>The following example is provided only for the purpose of illustration; consult the specifications for using protocols (e.g., &xep0080;) to see canonical examples.</p>
|
||||||
<example caption="Inclusion in Data Form"><![CDATA[<x xmlns='jabber:x:data' type='form'>
|
<example caption="Inclusion in Data Form"><![CDATA[<x xmlns='jabber:x:data' type='form'>
|
||||||
@ -59,6 +75,18 @@
|
|||||||
[ ... ]
|
[ ... ]
|
||||||
</x>]]></example>
|
</x>]]></example>
|
||||||
</section1>
|
</section1>
|
||||||
|
<section1 topic="Integration with Data Forms Validation (XEP-0122)" anchor="validation">
|
||||||
|
<p>To indicate that a 'geoloc' datatype is expected to be displayed by a receiving entity, the sender MUST use the 'geoloc' datatype as specified in &xep0122;.</p>
|
||||||
|
<p>When submitting a form, a field's value(s) MUST be validated by the receiving entity based on the 'geoloc' datatype identifier(s).</p>
|
||||||
|
<p>Also, the submitter MUST provide a 'geoloc' element for each element within the data form.</p>
|
||||||
|
<example caption="Data Forms Field Validation"><![CDATA[
|
||||||
|
<field var='where' label='contact location'>
|
||||||
|
<validate xmlns='http://jabber.org/protocol/xdata-validate' datatype='geoloc'>
|
||||||
|
<basic/>
|
||||||
|
</validate>
|
||||||
|
</field>]]></example>
|
||||||
|
<p>If a form-submitting entity receives a field type it does not understand, the 'text-single' field type from &xep0004; MUST be assumed.</p>
|
||||||
|
</section1>
|
||||||
<section1 topic="Security Considerations" anchor="security">
|
<section1 topic="Security Considerations" anchor="security">
|
||||||
<p>It is imperative to control access to location information, at least by default. Imagine that a stalker got unauthorized access to this information, with enough accuracy and timeliness to be able to find the target person. This scenario could lead to loss of life, so please take access control checks seriously. If an error is deliberately added to a location, the error SHOULD be the same for all receivers, to minimize the likelihood of triangulation. In the case of deliberate error, the <accuracy /> element SHOULD NOT be included.</p>
|
<p>It is imperative to control access to location information, at least by default. Imagine that a stalker got unauthorized access to this information, with enough accuracy and timeliness to be able to find the target person. This scenario could lead to loss of life, so please take access control checks seriously. If an error is deliberately added to a location, the error SHOULD be the same for all receivers, to minimize the likelihood of triangulation. In the case of deliberate error, the <accuracy /> element SHOULD NOT be included.</p>
|
||||||
</section1>
|
</section1>
|
||||||
@ -71,6 +99,9 @@
|
|||||||
The ®ISTRAR; already includes 'http://jabber.org/protocol/geoloc' in its registry of protocol namespaces (see &NAMESPACES;).
|
The ®ISTRAR; already includes 'http://jabber.org/protocol/geoloc' in its registry of protocol namespaces (see &NAMESPACES;).
|
||||||
</p>
|
</p>
|
||||||
</section2>
|
</section2>
|
||||||
|
<section2 topic='Data Form Validation Datatypes' anchor='registrar.xdata-validate'>
|
||||||
|
<p>The XMPP Registrar includes 'http://jabber.org/protocol/geoloc' in its registry of Data Forms Validation Datatype Prefixes.</p>
|
||||||
|
</section2>
|
||||||
</section1>
|
</section1>
|
||||||
<section1 topic="XML Schema" anchor="schema">
|
<section1 topic="XML Schema" anchor="schema">
|
||||||
<p>As this document only defines semantics for existing protocol, additional schemas are not required.</p>
|
<p>As this document only defines semantics for existing protocol, additional schemas are not required.</p>
|
||||||
|
Loading…
Reference in New Issue
Block a user