--- a/wi-addendum-local-services/Overview.html Mon Sep 24 11:34:34 2012 +0200
+++ b/wi-addendum-local-services/Overview.html Mon Sep 24 12:21:58 2012 +0200
@@ -81,6 +81,15 @@
wgPatentURI: "",
};
</script>
+
+ <style type="text/css">
+
+ /* Add addition spacing to <ol> and <ul> for rule definition */
+ ol.rule li, ul.rule li { padding:0.6em; }
+
+ </style>
+
+
</head>
<body>
<section id='abstract'>
@@ -94,10 +103,11 @@
Web Intents,[[!WEBINTENTS]], is a service discovery and light-weight RPC mechanism for web applications. The concept enables rich integration between web applications.
A typical Web Intents scenario is:
</p>
- <ol>
+ <ol class="rule">
<li>Web Intents Services register their intention to handle an action for the user </li>
<li>A web application requests to start an action (share, edit, pick, view, ...)</li>
<li>The user selects which service to handle the action</li>
+ <li>The selected service executes the action</li>
</ol>
<p>
A Web Intents Service is represented by a web page that declaratively marks itself as providing handling functionality for particular intents. Users register Web Intents Services
@@ -130,7 +140,7 @@
the user.
</p>
- <ol>
+ <ol class="rule">
<li>Triggered by navigator.startActivity the User Agent will start local network discovery of Web Intents Services.</li>
<li>Replies from Web Intents enabled devices contain a URL to a Web Intents document, containing Web Intents Service registration
markup, in the device. </li>
@@ -147,7 +157,7 @@
<p>
This specification defines conformance criteria that apply to:
</p>
- <ul>
+ <ul class="rule">
<li><dfn>UPnP enabled User Agent</dfn>: A <a>UPnP enabled User Agent</a> MUST support Web Intents [[!WEBINTENTS]] and the conformance criteria
stated in this specification. </li>
<li><dfn>Web Intents enabled UPnP device</dfn>: A <a>Web Intents enabled UPnP device</a> MUST support [[!UPNP-DEVICEARCH]] and the conformance criteria
@@ -269,7 +279,7 @@
SSDP headers for M-SEARCH response and NOTIFY when ST/NT headers are:<code>urn:schemas-webintents-org:service:WebIntents:1</code>
</p>
- <ul>
+ <ul class="rule">
<li>
<code>location.webintents.org</code>: <em class="rfc2119" title="required">required</em>. States the location to the Web Intents document in the <a>Web Intents enabled UPnP device</a>.
If the value of this header is a relative URL the base URL is the base URL of the <code>LOCATION</code> header.
@@ -281,7 +291,7 @@
one Web Intents <code>action</code> the action strings <em class="rfc2119" title="must">must</em> be separated with
comma. Commas included in action strings <em class="rfc2119" title="must">must</em> be percent-encoded as
defined in [[!RFC3986]], section-2.1.
- <br /> <br />
+ <br />
This header allows the <a>UPnP enabled User Agent</a> to filter received SSDP messages so that the <a>UPnP enabled User Agent</a> only has to
retrieve Web Intents documents for matching Web Intents Actions.
</li>
@@ -348,7 +358,7 @@
<br />
The <code>ST</code> header is set to: <code>urn:schemas-webintents-org:service:WebIntents:1</code>
</li>
- <br />
+
<li>
For each matching M-SEARCH response, i.e. the response ST header is <code>urn:schemas-webintents-org:service:WebIntents:1</code> and the <code>action.webintents.org</code>
header, if present, matches the Action of the invoked intent,
@@ -362,17 +372,17 @@
If the <code>action.webintents.org</code> header is present and does not match the <code>action</code> attributes of the Services registered in the retrieved Web Intents
document the <a>UPnP enabled User Agent</a> silently disregards the the received M-SEARCH response.
</li>
- <br />
+
<li>
It is expected that the Web Intents document contains registration markup and the <a>UPnP enabled User Agent</a> interprets this
registration markup according to the rules for registration defined by [[!WEBINTENTS]] and register the Services accordingly.
</li>
- <br />
+
<li>
The <a>UPnP enabled User Agent</a> makes each dynamically registered Service, that matches the Action of the invoked intent, available for selection
by the user, typically by making them visible and selectable in a Web Intents Service picker.
</li>
- <br />
+
<li>
Based on user selection of a dynamically registered Service the <a>UPnP enabled User Agent</a> loads the
Service handler code as defined by the <code>href</code> attribute in the registration markup for this Service according to the rules for
@@ -398,7 +408,7 @@
The <a>UPnP enabled User Agent</a> maintains a list of announced UPnP services based on received SSDP NOTIFY messages
with <code>NT</code> header equal to <code>urn:schemas-webintents-org:service:WebIntents:1</code>.
</li>
- <br />
+
<li>
When the navigator.startActivity method [[!WEBINTENTS]] is called the <a>UPnP enabled User Agent</a> checks the list
of of announced services and attempts to retrieve the Web Intents document from the discovered <a>Web Intents enabled UPnP device</a> in the following cases:
@@ -419,17 +429,17 @@
If the <code>action.webintents.org</code> header does not match the <code>action</code> attribute in the retrieved Web Intents document
the <a>UPnP enabled User Agent</a> silently disregards the received NOTIFY message.
</li>
- <br />
+
<li>
It is expected that the Web Intents document contains registration markup and the <a>UPnP enabled User Agent</a> interprets the
Web Intents document according to the rules for registration defined by [[!WEBINTENTS]] and register the Services accordingly.
</li>
- <br />
+
<li>
The <a>UPnP enabled User Agent</a> makes each dynamically registered Service, that matches the Action of the invoked intent, available for selection
by the user, typically by making them visible and selectable in a Web Intents Service picker.
</li>
- <br />
+
<li>
Based on user selection of a dynamically registered Service the <a>UPnP enabled User Agent</a> loads the
Service handler code as defined by the <code>href</code> attribute in the registration markup for this Service according to the rules for
@@ -503,7 +513,7 @@
<p>
The TXT record for the <code>webintents</code> service must have following parameters:
</p>
- <ul>
+ <ul class="rule">
<li>
<code>location</code>: <em class="rfc2119" title="required">required</em>. States the location to the Web Intents document in the <a class="internalDFN" href="#dfn-web-intents-enabled-mdns-device">Web Intents enabled mDNS device</a>.
The value of this header is path to be concatenated with a host of the <a class="internalDFN" href="#dfn-web-intents-enabled-mdns-device">Web Intents enabled mDNS device</a> to determine the location. The definition of the Web Intents document is the same as for UPnP.
@@ -515,7 +525,7 @@
one Web Intents <code>action</code> the action strings <em class="rfc2119" title="must">must</em> be separated with
comma. Commas included in action strings <em class="rfc2119" title="must">must</em> be percent-encoded as
defined in [[!RFC3986]], section-2.1.
- <br> <br>
+ <br>
This allows the <a>mDNS enabled User Agent</a> to filter received mDNS messages so that the <a>mDNS enabled User Agent</a> only has to
retrieve Web Intents documents for matching Web Intents Actions.
</li>
@@ -543,26 +553,26 @@
Send a multicast PTR query of the <code>_webintents._tcp.local</code> in the format specified by [[!MDNS]] and [[!DNS-SD]].
<br />
</li>
- <br />
+
<li>
For each response, send a unicast TXT query of the webintents service instance in the PTR answer.
<br />
<p>This step can be omitted in case that the Web Intents enabled mDNS device attaches a TXT answer with the previous answer.
</li>
- <br />
+
<li>
For each matching response, i.e. the response TXT record does not have an action parameter or does have an <code>action</code> parameter matching the Action of the invoked intent,
send a unicast request with a SRV query of the webintens service instance.
<br />
<p>This step can be omitted in case that the Web Intents enabled mDNS device attaches a SRV answer with the previous answer.
</li>
- <br />
+
<li>
For each response, send a unicast A and/or AAAA query of the host name in the SRV answer.
<br />
<p>This step can be omitted in case that the Web Intents enabled mDNS device attaches an A and/or AAAA answer with the previous answer.
</li>
- <br />
+
<li>
The <a>mDNS enabled User Agent</a> attempts to retrieve the Web Intents document from the discovered <a>Web Intents enabled mDNS device</a>.
The destination URL consists of an IP address in the A or AAAA answer, a port number in the SRV record and an absolute path in the <code>location</code> parameter of the TXT record.
@@ -574,17 +584,17 @@
<br /> <br />
Note that following steps are identical to those of UPnP described in 4.2.
</li>
- <br />
+
<li>
It is expected that the Web Intents document contains registration markup and the <a>mDNS enabled User Agent</a> interprets this
registration markup according to the rules for registration defined by [[!WEBINTENTS]] and register the Services accordingly.
</li>
- <br />
+
<li>
The <a>mDNS enabled User Agent</a> makes each dynamically registered Service, that matches the Action of the invoked intent, available for selection
by the user, typically by making them visible and selectable in a Web Intents Service picker.
</li>
- <br />
+
<li>
Based on user selection of a dynamically registered Service the <a>mDNS enabled User Agent</a> loads the
Service handler code as defined by the <code>href</code> attribute in the registration markup for this Service according to the rules for
@@ -604,7 +614,7 @@
it is possible to get a Web Intents document for "LivingRoomTV" at http://192.168.1.47:3619/webintents.html.
</p>
- <ul>
+ <ul class="rule">
<li>
<code>_webintents._tcp.local. 120 IN PTR LivingRoomTV._webintents._tcp.local.</code>: A LivingRoomTV instance serves webintents service.
</li>
@@ -635,7 +645,7 @@
<p>
Examples:
</p>
- <ul>
+ <ul class="rule">
<li>
A Client application invoking a "View" intent provides, as intent payload data, a link to a video to be displayed at the remote <a>Web Intents enabled UPnP device</a>.
The Service application takes full control of the video playback by providing control buttons and sends UPnP commands to the remote device.
@@ -659,15 +669,15 @@
contains the UI for controlling the video playback.
</p>
- <p align="left"><img src="Example_scenario_1/Slide1.png" alt="Example scenario 1/Slide1" width="700" height="700" ><br>
+ <p><img src="Example_scenario_1/Slide1.png" alt="Example scenario 1/Slide1" width="700" height="700" ><br>
(<a href="Example_scenario_1/Slide1.png">View as PNG</a>)
</p>
- <p align="left"><img src="Example_scenario_1/Slide2.png" alt="Example scenario 1/Slide2" width="700" height="700" ><br>
+ <p><img src="Example_scenario_1/Slide2.png" alt="Example scenario 1/Slide2" width="700" height="700" ><br>
(<a href="Example_scenario_1/Slide2.png">View as PNG</a>)
</p>
- <p align="left"><img src="Example_scenario_1/Slide3.png" alt="Example scenario 1/Slide3" width="700" height="700" ><br>
+ <p><img src="Example_scenario_1/Slide3.png" alt="Example scenario 1/Slide3" width="700" height="700" ><br>
(<a href="Example_scenario_1/Slide3.png">View as PNG</a>)
</p>
</section>
@@ -690,19 +700,19 @@
Currently [[!WEBINTENTS]] does not allow this but W3C DAP Action http://www.w3.org/2009/dap/track/actions/519 should add a proposal for a hidden disposition.
</p>
- <p align="left"><img src="Example_scenario_2/Slide1.png" alt="Example scenario 2/Slide1" width="700" height="700" ><br>
+ <p><img src="Example_scenario_2/Slide1.png" alt="Example scenario 2/Slide1" width="700" height="700" ><br>
(<a href="Example_scenario_2/Slide1.png">View as PNG</a>)
</p>
- <p align="left"><img src="Example_scenario_2/Slide2.png" alt="Example scenario 2/Slide2" width="700" height="700" ><br>
+ <p><img src="Example_scenario_2/Slide2.png" alt="Example scenario 2/Slide2" width="700" height="700" ><br>
(<a href="Example_scenario_2/Slide2.png">View as PNG</a>)
</p>
- <p align="left"><img src="Example_scenario_2/Slide3.png" alt="Example scenario 2/Slide3" width="700" height="700" ><br>
+ <p><img src="Example_scenario_2/Slide3.png" alt="Example scenario 2/Slide3" width="700" height="700" ><br>
(<a href="Example_scenario_2/Slide3.png">View as PNG</a>)
</p>
- <p align="left"><img src="Example_scenario_2/Slide4.png" alt="Example scenario 2/Slide4" width="700" height="700" ><br>
+ <p><img src="Example_scenario_2/Slide4.png" alt="Example scenario 2/Slide4" width="700" height="700" ><br>
(<a href="Example_scenario_2/Slide4.png">View as PNG</a>)
</p>
</section>
@@ -712,14 +722,14 @@
<section>
<h3>Example of Web Intents document</h3>
- <p align="left"><img src="Example1_registration_page/Slide1.png" alt="Example1 registration page" width="280" height="280" ><br>
+ <p><img src="Example1_registration_page/Slide1.png" alt="Example1 registration page" width="280" height="280" ><br>
(<a href="Example1_registration_page/Slide1.png">View as PNG</a>)
</p>
</section>
<section>
<h3>Example of UPnP Device description document</h3>
- <p align="left"><img src="Example_device_and_service_description_pages/Slide1.png" alt="Example device and service description pages/Slide1" width="600" height="600" ><br>
+ <p><img src="Example_device_and_service_description_pages/Slide1.png" alt="Example device and service description pages/Slide1" width="600" height="600" ><br>
(<a href="Example_device_and_service_description_pages/Slide1.png">View as PNG</a>)
</p>
</section>