Circuit
Component: At circuit structural level, components are NMOS/PMOS
Connector: connectors are wire,
Interface: input/output ports
Link:
Example: We have the following inverter example:

From xADL2.0 point of view, the above structure may look like:


<! - - Namespace Declaration - ->
<?xml version = “1.0” encoding = “UTF-8” ?>
<xArch xmlns = “http://www.ics.uci.edu/pub/arch/xArch/instance.xsd”
xmlns:instance = “http://www.ics.uci.edu/pub/arch/xArch/instance.xsd”
xmlns:types = “http://www.ics.uci.edu/pub/arch/xArch/types.xsd”
xmlns:xlink = “http://www.w3.org/1999/xlink”
xmlns:xsi = “http://www.w3.org/2000/10/XMLSchema-instance”>
<types:archStructure xsi:type = “types:ArchStructure”>
<! - - Component: PMOS description - ->
<types:component instance:id = “PMOSComp” xsi:type = “types:Component”>
<types:description xsi:type = “instance:Description”>PMOS</types:description>
<types:interface instance:id = “PMOSCompRight” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”> PMOS.Right </types:description>
<types:direction xsi:type = “instance:Direction” >out</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tRightType”/>
</types:interface>
<types:interface instance:id = “PMOSCompLeft” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”> PMOS.Left </types:description>
<types:direction xsi:type = “instance:Direction” >in</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tLeftType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href = “#tPMOS” />
</types:component>
<! - - Component: NMOS Description - ->
<types:component instance:id = “NMOSComp” xsi:type = “types:Component”>
<types:description xsi:type = “instance:Description”>NMOS</types:description>
<types:interface instance:id = “PMOSCompRight” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”> NMOS.Right </types:description>
<types:direction xsi:type = “instance:Direction” >out</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tRightType”/>
</types:interface>
<types:interface instance:id = “NMOSCompLeft” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”> NMOS.Left </types:description>
<types:direction xsi:type = “instance:Direction” >in</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tLeftType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href = “#tNMOS” />
</types:component>
<! - - Component (Power Supply): VDD Description - ->
<types:component instance:id = “VDDComp” xsi:type = “types:Component”>
<types:description xsi:type = “instance:Description”>VDD</types:description>
<types:interface instance:id = “VDDCompRight” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”> VDD.Right </types:description>
<types:direction xsi:type = “instance:Direction” >out</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tRightType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href = “#tVDD” />
</types:component>
<! - - Component: Ground Description -->
<types:component instance:id = “GNDComp” xsi:type = “types:Component”>
<types:description xsi:type = “instance:Description”>GND</types:description>
<types:interface instance:id = “GNDCompRight” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”> GND.Right </types:description>
<types:direction xsi:type = “instance:Direction” >out</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tRightType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href = “#tGND” />
</types:component>
<! - - Interface (Input Port): In Description - - >
<types:interface instance:id = “In” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”> In</types:description>
<types:direction xsi:type = “instance:Direction” >in</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tInputType”/>
</types:interface>
<! - - Interface (Output Port): Out Description - - >
<types:interface instance:id = “Out” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Out</types:description>
<types:direction xsi:type = “instance:Direction” >out</types:direction>
<types:type xlink:type = “simple” xlink:href = “ #tOutputType”/>
</types:interface>
<!- - Connector:Con1(In-PMOS-NMOS) Description- - >
<types:connector instance:id = “Con1” xsi:type = “types:Connector”>
<types:description xsi:type = “instance:Description” >Wire on integrated circuit</types:description>
<types:interface instance:id = “Con1Left” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Left</types:description>
<types:direction xsi:type = “instance:Direction:>in</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tLeftType”/>
</types:interface>
<types:interface instance:id = “Con1Right1” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Right1</types:description>
<types:direction xsi:type = “instance:Direction:>out</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tRightType”/>
</types:interface>
<types:interface instance:id = “Con1Right2” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Right2</types:description>
<types:direction xsi:type = “instance:Direction:>out</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tRightType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href= “#tWire” />
</types:connector>
<!- - Connector:Con2(PMOS-VDD) Description- - >
<types:connector instance:id = “Con2” xsi:type = “types:Connector”>
<types:description xsi:type = “instance:Description” >Wire on integrated circuit</types:description>
<types:interface instance:id = “Con2Left” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Left</types:description>
<types:direction xsi:type = “instance:Direction:>in</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tLeftType”/>
</types:interface>
<types:interface instance:id = “Con2Right” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Right</types:description>
<types:direction xsi:type = “instance:Direction:>out</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tRightType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href= “#tWire” />
</types:connector>
<!- - Connector:Con3(PMOS-NMOS) Description- - >
<types:connector instance:id = “Con3” xsi:type = “types:Connector”>
<types:description xsi:type = “instance:Description” >Wire on integrated circuit</types:description>
<types:interface instance:id = “Con3Left” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Left</types:description>
<types:direction xsi:type = “instance:Direction:>in</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tLeftType”/>
</types:interface>
<types:interface instance:id = “Con3Right1” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Right1</types:description>
<types:direction xsi:type = “instance:Direction:>out</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tRightType”/>
</types:interface>
<types:interface instance:id = “Con3Right2” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Right2</types:description>
<types:direction xsi:type = “instance:Direction:>out</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tRightType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href= “#tWire” />
</types:connector>
<!- - Connector:Con4(GND-NMOS) Description- - >
<types:connector instance:id = “Con4” xsi:type = “types:Connector”>
<types:description xsi:type = “instance:Description” >Wire on integrated circuit</types:description>
<types:interface instance:id = “Con4Left” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Left</types:description>
<types:direction xsi:type = “instance:Direction:>in</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tLeftType”/>
</types:interface>
<types:interface instance:id = “Con4Right” xsi:type = “types:Interface”>
<types:description xsi:type = “instance:Description”>Wire.Right</types:description>
<types:direction xsi:type = “instance:Direction:>out</types:direction>
<types:type xlink:type = “simple” xlink:href = “#tRightType”/>
</types:interface>
<types:type xlink:type = “simple” xlink:href= “#tWire” />
</types:connector>
<! - - Link: PMOS-Con3-NMOS Description - - >
<types:link instance:id = “link1” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>PMOS-Con3</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#PMOSLeft” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con3Left” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<types:link instance:id = “link2” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>Con3-NMOS</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con3Right” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#NMOSLeft” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<! - - Link: PMOS-Con1-NMOS Description - - >
<types:link instance:id = “link3” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>PMOS-Con1</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#PMOSRight” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con1Right1” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<types:link instance:id = “link4” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>NMOS-Con1</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con1Right2” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#NMOSLeft” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<! - - Link: PMOS-Con2-VDD Description - - >
<types:link instance:id = “link5” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>VDD-Con2</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con2Left” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#VDDRight” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<types:link instance:id = “link6” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>Con2-PMOS</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con2Right” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#PMOSRight” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<! - - Link: NMOS-Con4-GND Description - - >
<types:link instance:id = “link7” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>NMOS-Con4</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#NMOSRight” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con4Left” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<types:link instance:id = “link8” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>Con4-GND</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con4Right” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#GNDLeft” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<! - - Link: Con1-In Description - - >
<types:link instance:id = “link9” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>Con1-In</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con1Left” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#In” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
<! - - Link: Con3-Out Description - - >
<types:link instance:id = “link10” xsi:type = “types:Link”>
<types:description xsi:type = “instance:Description”>Con3-Out</types:description>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Con3Right2” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
<types:point xsi:type = “types:Point”>
<instance:anchorOnInterface xlink:href = “#Out” xsi:type = “instance:XMLLink” xlink:type = “simple”/>
</types:point>
</types:link>
</types:archStructure>
… …