anchor.diff:      "n3required"    : [ "${n3ForNewPosition}", "${positionTitleAssertion}", "${positionTypeAssertion}", 
       					"${orgLabelAssertion}", "${orgTypeAssertion}" ],
       
  -    "n3optional"    : [ "${startYearAssertion}", "${endYearAssertion}" ],                        
  +    "n3optional"    : [ "${n3ForStart}", "${n3ForEnd}" ],                        
                                                                        
       "newResources"  : { "position" : "${defaultNamespace}",
  -                        "org" : "${defaultNamespace}" },
  +                        "org" : "${defaultNamespace}",
  +                        "intervalNode" : "${defaultNamespace}",
  +                        "startNode" : "${defaultNamespace}",
  +                        "endNode" : "${defaultNamespace}"  },
   
       "urisInScope"    : { },
       "literalsInScope": { },
       "urisOnForm"     : [ "org", "orgType", "positionType" ],
  -    "literalsOnForm" :  [ "positionTitle", "orgLabel", "startYear", "endYear" ],                          
  +    "literalsOnForm" :  [ "positionTitle", "orgLabel"  ],                          
       "filesOnForm"    : [ ],
       "sparqlForLiterals" : { },
       "sparqlForUris" : {  },
       "sparqlForExistingLiterals" : {
           "orgLabel"           : "${orgLabelQuery}",
           "positionTitle"      : "${positionTitleQuery}",
  -        "startYear"          : "${startYearQuery}",
  -        "endYear"            : "${endYearQuery}"
  +        "startField.value"   : "${existingStartDateQuery}",
  +        "endField.value"     : "${existingEndDateQuery}"
       },
       "sparqlForExistingUris" : {
           "org"               : "${orgQuery}",
           "orgType"           : "${orgTypeQuery}",
  -        "positionType"      : "${positionTypeQuery}"
  +        "positionType"      : "${positionTypeQuery}" ,
  +        "intervalNode"      : "${existingIntervalNodeQuery}", 
  +        "startNode"         : "${existingStartNodeQuery}",
  +        "endNode"           : "${existingEndNodeQuery}",
  +        "startField.precision": "${existingStartPrecisionQuery}",
  +        "endField.precision"  : "${existingEndPrecisionQuery}"
       },
       "fields" : {
         "positionTitle" : {
  
positive.code:         <v:input type="text" label="Position Title ${requiredHint}" id="positionTitle" size="30" />
          <v:input type="select" label="Position Type ${requiredHint}" id="positionType" />
  
          <v:input type="text" label="Start Year <span class='hint'>(YYYY)</span>" id="startYear" size="4" />   
          <v:input type="text" label="End Year <span class='hint'>(YYYY)</span>" id="endYear" size="4" />
      
      </div>
         
  
negative.code:     if (editConfig == null) {
          editConfig = new EditConfiguration((String) request.getAttribute("editjson"));     
          EditConfiguration.putConfigInSession(editConfig,session);
          
          //setup date time edit elements
          Field startField = editConfig.getField("startField");
          startField.setEditElement(new DateTimeWithPrecision(startField, VitroVocabulary.Precision.YEAR));        
          Field endField = editConfig.getField("endField");
          endField.setEditElement(new DateTimeWithPrecision(endField, VitroVocabulary.Precision.YEAR));
      }
      
      editConfig.addValidator(new StartYearBeforeEndYear("startYear","endYear") ); 
  