         tagGroupHelper(
           'dc:subject',
           value,
-          {'xsi:type': "http:\\github.com/Connexions/rhaptos.cnxmlutils/rhaptos/cnxmlutils/schema"}
-        )
+          {'xsi:type': "http://github.com/Connexions/rhaptos.cnxmlutils/rhaptos/cnxmlutils/schema"}
+        ) unless options.doNotUpdate
       @on 'change:rightsHolders', (model, value, options) =>
         tagGroupHelper(
           'meta',
           value,
           {property: "dcterms:rightsHolder"}
-        )
+        ) unless options.doNotUpdate
       @on 'change:keywords', (model, value, options) =>
         # make sure we actually have content
-        return if not value.length
+        return if not value.length or options.doNotUpdate
 
         container = @$xml.find('metadata')
         template = "<dc:subject></dc:subject>"
-        @$xml.find('dc\\:subject').not('[type]').remove()
+        @$xml.find('dc\\:subject').not('[xsi\\:type="http://github.com/Connexions/rhaptos.cnxmlutils/rhaptos/cnxmlutils/schema"]').remove()
 
         _.each(value, (keyword) ->
           container.append('    ')

        @_save()

      @on 'change:authors', (model, value, options) =>
        creatorHelper('author', 'aut', value)
      @on 'change:publishers', (model, value, options) =>
        creatorHelper('publisher', 'pbl', value)
      @on 'change:editors', (model, value, options) =>
        creatorHelper('editor', 'edt', value)
      @on 'change:translators', (model, value, options) =>
        creatorHelper('translator', 'trl', value)
      @on 'change:illustrators', (model, value, options) =>
        creatorHelper('illustrator', 'ill', value)

      # When a title changes on one of the nodes in the ToC:
      #

        )
          
      @on 'change:language', (model, value, options) =>
        tagHelper('dc:language', value, {'xsi:type': "dcterms:RFC4646"}) unless options.doNotUpdate
      @on 'change:description', (model, value, options) =>
        tagHelper('dc:description', value) unless options.doNotUpdate
      @on 'change:rights', (model, value, options) =>
        tagHelper('dc:rights', value) unless options.doNotUpdate

      metaHelper = (value, attributes) =>
        tagHelper('meta', value, attributes)

      @on 'change:rightsUrl', (model, value, options) =>
        metaHelper(value, {property: "lrmi:useRightsUrl"}) unless options.doNotUpdate
      @on 'change:dateModified', (model, value, options) =>
        metaHelper(value, {properties: "dcterms:modified"}) unless options.doNotUpdate

      tagGroupHelper = (tagName, values, attributes) =>
        # make sure we actually have content
