discovery-api/Overview.src.html
changeset 373 bc1d9819cad3
parent 372 7639401e21f4
child 374 07e931de937f
     1.1 --- a/discovery-api/Overview.src.html	Mon Feb 04 14:00:59 2013 +0100
     1.2 +++ b/discovery-api/Overview.src.html	Mon Feb 04 15:18:11 2013 +0100
     1.3 @@ -971,18 +971,19 @@
     1.4        </h2>
     1.5        <p>
     1.6          A <a>user agent</a> conforming to this specification MAY implement <abbr title=
     1.7 -        "Simple Service Discovery Protocol">SSDP</abbr> [[!UPNP-DEVICEARCH11]], Zeroconf [[!DNS-SD]] + [[!MDNS]] or
     1.8 +        "Simple Service Discovery Protocol">SSDP</abbr> [[!UPNP-DEVICEARCH11]], Zeroconf [[!DNS-SD]] + [[!MDNS]] and/or
     1.9          <abbr title="Discovery and Launch Protocol">DIAL</abbr> [<a href=
    1.10          "https://sites.google.com/a/dial-multiscreen.org/dial/dial-protocol-specification">DIAL</a>] <dfn>service
    1.11          discovery mechanisms</dfn> - the requirements detailed in this section of the specification - to enable Web
    1.12 -        pages to request and connect with HTTP services running on networked devices, discovered via either mechanism,
    1.13 -        through this API. When a <a>user agent</a> implements either of these <a>service discovery mechanisms</a>, then
    1.14 -        it MUST conform to the corresponding algorithms provided in this section of the specification.
    1.15 +        pages to request and connect with HTTP services running on networked devices, discovered via any of these
    1.16 +        mechanisms, through this API. When a <a>user agent</a> implements any of these <a>service discovery
    1.17 +        mechanisms</a>, then it MUST conform to the corresponding algorithms provided in this section of the
    1.18 +        specification.
    1.19        </p>
    1.20        <p>
    1.21 -        This section presents how the results of these two <a>service discovery mechanisms</a> will be matched to
    1.22 -        requested service types, how the user agent stores available and active services and how their properties are
    1.23 -        applied to any resulting <a href="#networkservice"><code>NetworkService</code></a> objects.
    1.24 +        This section presents how the results of these <a>service discovery mechanisms</a> will be matched to requested
    1.25 +        service types, how the user agent stores available and active services and how their properties are applied to
    1.26 +        any resulting <a href="#networkservice"><code>NetworkService</code></a> objects.
    1.27        </p>
    1.28        <p>
    1.29          It is expected that user agents will perform these <a>service discovery mechanisms</a> asynchronously and
    1.30 @@ -1009,13 +1010,11 @@
    1.31        </p>
    1.32        <p>
    1.33          The rule for <dfn>adding an available service</dfn> is the process of adding a new service or updating an
    1.34 -        existing service in the <a>list of available service records</a> that is generally available on the user's
    1.35 -        current network. This rule takes one argument, <var>network service record</var>, and consists of running the
    1.36 +        existing service that is generally available on the user's current network in the <a>list of available service
    1.37 +        records</a>. This rule takes one argument, <var>network service record</var>, and consists of running the
    1.38          following steps:
    1.39        </p>
    1.40        <ol class="rule">
    1.41 -        <li>Let <var>new service registration flag</var> be <code>true</code>.
    1.42 -        </li>
    1.43          <li>For each <var>existing service record</var> in the current <a>list of available service records</a>, run
    1.44          the following sub-steps:
    1.45            <ol class="rule">
    1.46 @@ -1023,19 +1022,17 @@
    1.47              service record</var>'s <code>id</code> property then abort any remaining sub-steps and continue at the next
    1.48              available <var>existing service record</var>.
    1.49              </li>
    1.50 -            <li>Set <var>new service registration flag</var> to <code>false</code>.
    1.51 -            </li>
    1.52              <li>Replace the value of <var>existing service record</var> in the current <a>list of available service
    1.53 -            records</a> with the value of <var>network service record</var>.
    1.54 +            records</a> with the value of <var>network service record</var>, aborting any remaining steps in this
    1.55 +            algorithm and return.
    1.56              </li>
    1.57            </ol>
    1.58          </li>
    1.59 -        <li>If <var>new service registration flag</var> is set to <code>true</code> then add <var>network service
    1.60 -        record</var> to the <a>list of available service records</a> as a new item.
    1.61 +        <li>Add <var>network service record</var> to the <a>list of available service records</a> as a new item.
    1.62          </li>
    1.63          <li>For each <var>service manager</var> in the <a>list of active service managers</a> run the following steps:
    1.64            <ol class="rule">
    1.65 -            <li>Let <var>service type in current service manager flag</var> be <code>false</code>.
    1.66 +            <li>Let <var>'service type in current service manager' flag</var> be <code>false</code>.
    1.67              </li>
    1.68              <li>For each <var>active service</var> in <var>service manager</var> run the following steps:
    1.69                <ol class="rule">
    1.70 @@ -1043,12 +1040,10 @@
    1.71                  service</var>'s <code>type</code> attribute then abort any remaining sub-steps for this <var>active
    1.72                  service</var> and continue at the next available <var>active service</var>.
    1.73                  </li>
    1.74 -                <li>Set the <var>service type in current service manager flag</var> to <code>true</code>.
    1.75 +                <li>Set the <var>'service type in current service manager' flag</var> to <code>true</code>.
    1.76                  </li>
    1.77 -                <li>If the <var>new service registration flag</var> is set to <code>false</code>, the <var>network
    1.78 -                service record</var>'s <code>id</code> property equals the <var>active service</var>'s <code>id</code>
    1.79 -                attribute and <var>active service</var>'s <a href="#dom-networkservice-online"><code>online</code></a>
    1.80 -                attribute is currently set to <code>false</code> then set <var>active service</var>'s <a href=
    1.81 +                <li>If the <var>network service record</var>'s <code>id</code> property equals the <var>active
    1.82 +                service</var>'s <code>id</code> attribute then set <var>active service</var>'s <a href=
    1.83                  "#dom-networkservice-online"><code>online</code></a> attribute to <code>true</code> and then <a href=
    1.84                  "http://www.whatwg.org/specs/web-apps/current-work/complete/webappapis.html#queue-a-task"
    1.85                        class="externalDFN">queue a task</a> to dispatch a newly created event with the name <a href=
    1.86 @@ -1059,11 +1054,10 @@
    1.87                  </li>
    1.88                </ol>
    1.89              </li>
    1.90 -            <li>If the <var>new service registration flag</var> is set to <code>true</code> and the <var>service type
    1.91 -            in current service manager flag</var> is also set to <code>true</code> then increment <var>service
    1.92 -            manager</var>'s <a href="#dom-networkservices-servicesavailable"><code>servicesAvailable</code></a>
    1.93 -            attribute by <code>1</code> and then <a href=
    1.94 -            "http://www.whatwg.org/specs/web-apps/current-work/complete/webappapis.html#queue-a-task"
    1.95 +            <li>If the <var>'service type in current service manager' flag</var> is set to <code>true</code> then
    1.96 +            increment <var>service manager</var>'s <a href=
    1.97 +            "#dom-networkservices-servicesavailable"><code>servicesAvailable</code></a> attribute by <code>1</code> and
    1.98 +            then <a href="http://www.whatwg.org/specs/web-apps/current-work/complete/webappapis.html#queue-a-task"
    1.99                    class="externalDFN">queue a task</a> to dispatch a newly created event with the name <a href=
   1.100                    "#event-serviceavailable"><code>serviceavailable</code></a> that uses the <a href=
   1.101                    "http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#event"
   1.102 @@ -1095,7 +1089,7 @@
   1.103              <li>For each <var>service manager</var> in the <a>list of active service managers</a> run the following
   1.104              steps:
   1.105                <ol class="rule">
   1.106 -                <li>Let <var>service type in current service manager flag</var> be <code>false</code>.
   1.107 +                <li>Let <var>'service type in current service manager' flag</var> be <code>false</code>.
   1.108                  </li>
   1.109                  <li>For each <var>active service</var> in <var>service manager</var> run the following steps:
   1.110                    <ol class="rule">
   1.111 @@ -1103,7 +1097,7 @@
   1.112                      <var>active service</var>'s <code>type</code> attribute then abort any remaining sub-steps for this
   1.113                      <var>active service</var> and continue at the next available <var>active service</var>.
   1.114                      </li>
   1.115 -                    <li>Set the <var>service type in current service manager flag</var> to <code>true</code>.
   1.116 +                    <li>Set the <var>'service type in current service manager' flag</var> to <code>true</code>.
   1.117                      </li>
   1.118                      <li>If <var>existing service record</var>'s <code>id</code> property equals the <var>active
   1.119                      service</var>'s <code>id</code> attribute and <var>active service</var>'s <a href=
   1.120 @@ -1119,7 +1113,7 @@
   1.121                      </li>
   1.122                    </ol>
   1.123                  </li>
   1.124 -                <li>If the <var>service type in current service manager flag</var> is set to <code>true</code> then
   1.125 +                <li>If the <var>'service type in current service manager' flag</var> is set to <code>true</code> then
   1.126                  decrement <var>service manager</var>'s <a href=
   1.127                  "#dom-networkservices-servicesavailable"><code>servicesAvailable</code></a> attribute by <code>1</code>
   1.128                  and then <a href=