anchor.diff:  ----
   
   
  -=== Usage
  -
   The most straight-forward usage of this service is simply:
   
   [source,java]
  
positive.code: <4> is a convenience method to obtain value of child text node.
  
  
  == Registering the services
  
  Register the concrete implementation (from isis-core) in `isis.properties`:
  
  [source]
  ----
  isis.services=...,\
                org.apache.isis.core.runtime.services.xmlsnapshot.XmlSnapshotServiceDefault,\
                ...
  ----
  
  === Related Services
  
  The link:./memento-service.html[memento service] also provides a mechanism for generating string representations of domain objects.
  
  The link:./bookmark-service.html[bookmark service] provides a mechanism for obtaining a string representations of a single domain object.
  
  
  
  
negative.code: As you might imagine, the resultant XML document can get quite large very quickly with only a few "include"s.
  
  
  [NOTE]
  ====
  If an XSD schema is beng generated (using `snapshot.getXsdElement()` then note that for the XSD to be correct, the object being snapshotted must have non-null values for the paths that are `include()`'d. If this isn't done then the XSD will not be correct reflect for another snapshotted object that does have non-null values.
  ====
  
  
  
  
  == Automatic inclusions
  
  If the domain object being snapshotted implements the `SnapshottableWithInclusions` interace, then this moves the
  responsibility for determining what is included within the snapshot from the caller to the snapshottable object itself:
  