Beskrivning: Den här utökningspunkten används för att definiera internt schema för XML-ID-avbildning med hjälp av elementet mapping. Dessa scheman kan sedan användas för XML-jämförelse för att unikt identifiera XML-element med hjälp av värdet i ett attribut eller texten i ett underordnat element.
Dessutom kan sorterade element användas till att ange att direkt underordnade objekt till ett element ska jämföras på ett sorterat sätt i stället för enligt standard, vilket är osorterat.
Konfigurationsmärkord:
<!ELEMENT idmap (mapping*)>
<!ATTLIST idmap
name
CDATA #REQUIRED
extension
CDATA
>
<extension
point="org.eclipse.compare.structureMergeViewers">
<structureMergeViewer
extensions="xml,classpath,cd"
class="org.eclipse.compare.xml.XMLStructureViewerCreator">
</structureMergeViewer>
Varning: Om ett filtillägg associeras flera gånger används bara den första associeringen. Dessutom har interna ID-avbildningsscheman prioritet över användarens ID-avbildningsscheman om flera filtillägg har definierats.
Varning: När ett internt ID-avbildningsschema med filtilläggsassociering tas bort (från plugin.xml) måste insticksprogrammet XML-jämförelse läsas in igen så att filtillägget disassocieras. Om inte, används XML-jämförelse med standardalgoritmen Osorterad vid första jämförelsen av filer med aktuellt filtillägg. (Vid det här laget har filtillägget emellertid disassocierats från XML-insticksprogrammet, eftersom insticksprogrammet har lästs in.)
<!ELEMENT mapping EMPTY>
<!ATTLIST mapping
signature
CDATA #REQUIRED
id
CDATA #REQUIRED
id-source CDATA
>
<!ELEMENT ordered EMPTY>
<!ATTLIST ordered
signature
CDATA #REQUIRED
>
<idmap name="ANT">
<mapping signature="project" id="name"/>
<mapping signature="project>target" id="name"/>
<ordered signature="project>target"/>
<idmap>
I följande exempel visas ett fall där texten i ett underordnat element används som ID:
<idmap name="Book Catalog" extension="book">
<mapping signature="catalog>book" id="isbn" id-source="body"/>
<idmap>
Tillhandahållen implementering:
Med insticksprogrammet XML-jämförelse definieras ett ID-avbildningsschema för Eclipse plugin.xml-filer, ett för .classpath-filer och ett för ANT-filer.