+### Attributes added during expansion
+
+⛩📰 书社 will add a few attributes to toplevel result elements, both
+ in the main document and any embedded documents, during the expansion
+ phase prior to the main transformation.
+These include :—
+
+- A `@书社:cksum` attribute giving the `cksum` checksum of the
+ corresponding source file.
+
+- A `@书社:mtime` attribute giving the last modified time of the
+ corresponding source file.
+
+- A `@书社:identifier` attribute giving the ⛩📰 书社 identifier
+ (i·e, starting with `about:shushe?`) of the corresponding source
+ file.
+
+- For elements in the `html` namespace, an `itemscope` attribute and an
+ `itemtype` attribute with a value of
+ `urn:fdc:ladys.computer:20231231:Shu1She4:document` (for the main
+ document) or `urn:fdc:ladys.computer:20231231:Shu1She4:embed` (for
+ embedded documents).
+ These attributes are used to scope any nested `<html:meta>` elements
+ with `@itemprop` attributes to their containing documents.
+
+## Soft Dependencies
+
+When a file depends only on the metadata of another file, and not its
+ contents, it can be added as a soft dependency rather than an embed.
+Soft dependencies are indicated using a `<书社:link>` element with an
+ `@xlink:show` of `"other"`, `"none"`, or absent, and an
+ `@xlink:actuate` which is absent or `"none"`.
+A change to a soft dependency requires a file to be rebuilt, but no
+ embedding occurs automatically.
+Because there is no automatic embedding, soft dependencies are allowed
+ to be recursive.
+
+The `@xlink:href`s of soft dependency `<书社:link>`s are processed in
+ exactly the same fashion as embeds, described above.
+
+If the value of `@xlink:show` is `"other"`, the soft dependency is
+ transitive.
+Any dependencies of the indicated file which have a `@name` which
+ matches that of the referencing `<书社:link>` element will also be
+ treated as soft dependencies.
+If no `@name` is given, it is treated as the empty string.
+
+When a document is embedded directly, all of its soft dependencies are
+ also treated as soft dependencies of the embedding object.
+However, a document is embedded in a transitive soft dependency, the
+ embed is treated exactly as tho it were itself a transitive soft
+ dependency.
+That means it must have a matching `@name` to be included, and
+ like·wise for any embeds or soft dependencies it contains.
+
+If the value of `@xlink:show` is `"none"` or absent, the soft
+ dependency is not transitive and its own dependencies are not
+ checked.