<?xml version="1.0" encoding="utf-8" ?>
<Silk>
	<Prefix id="rdf" namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#" />
	<Prefix id="rdfs" namespace="http://www.w3.org/2000/01/rdf-schema#" />
	<Prefix id="dbpprop" namespace="http://dbpedia.org/property/" />
	<Prefix id="dbpedia-owl" namespace="http://dbpedia.org/ontology/" />
	<Prefix id="drugbank" namespace="http://www4.wiwiss.fu-berlin.de/drugbank/resource/drugbank/" />
	<Prefix id="owl" namespace="http://www.w3.org/2002/07/owl#" />

	<DataSource id="dbpedia">
		<EndpointURI>http://dbpedia.org/sparql</EndpointURI>
		<Graph>http://dbpedia.org</Graph>
		<DoCache>1</DoCache>
		<RetryCount>100000</RetryCount>
	</DataSource>

	<DataSource id="drugbank">
		<EndpointURI>http://www4.wiwiss.fu-berlin.de/drugbank/sparql</EndpointURI>
		<PageSize>200</PageSize>
		<DoCache>1</DoCache>
	</DataSource>

	<Metric id="jaroSets">
		<Param name="item1" />
		<Param name="item2" />
		<AVG>
			<Compare metric="jaroWinklerSimilarity">
				<Param name="str1" path="?item1" />
				<Param name="str2" path="?item2" />
			</Compare>
		</AVG>
	</Metric>

	<Interlink id="drugs">
		<LinkType>owl:sameAs</LinkType>

		<SourceDataset dataSource="dbpedia" var="a">
			<RestrictTo>
				?a rdf:type dbpedia-owl:Drug
			</RestrictTo>
		</SourceDataset>

		<TargetDataset dataSource="drugbank" var="b">
			<RestrictTo>
				?b rdf:type drugbank:drugs
			</RestrictTo>
		</TargetDataset>

		<LinkCondition>
			<AVG>
				<MAX>
					<Compare metric="maxSimilarityInSets">
						<Param name="set1" path="?a/rdfs:label" />
						<Param name="set2" path="?b/rdfs:label" />
						<Param name="submetric" value="jaroSets" />
					</Compare>
					<Compare metric="maxSimilarityInSets" optional="1">
						<Param name="set1" path="?a/rdfs:label" />
						<Param name="set2" path="?b/drugbank:synonym" />
						<Param name="submetric" value="jaroSets" />
					</Compare>
					<Compare metric="maxSimilarityInSets" optional="1">
						<Param name="set1" path="?a/rdfs:label" />
						<Param name="set2" path="?b/drugbank:genericName" />
						<Param name="submetric" value="jaroSets" />
					</Compare>
				</MAX>
				<MAX optional="1" weight="5">
					<Compare metric="stringEquality" optional="1">
						<Param name="str1">
							<Transform function="concat">
								<Param name="str1" path="?a/dbpedia-owl:atcprefix" />
								<Param name="str2" path="?a/dbpedia-owl:atcsuffix" />
							</Transform>
						</Param>
						<Param name="str2" path="?b/drugbank:atcCode" />
					</Compare>
					<Compare metric="stringEquality" optional="1">
						<Param name="str1" path="?a/dbpedia-owl:casNumberLink" />
						<Param name="str2" path="?b/drugbank:casRegistryNumber" />
					</Compare>
					<Compare metric="stringEquality" optional="1">
						<Param name="str1" path="?a/dbpedia-owl:pubchem" />
						<Param name="str2" path="?b/drugbank:pubchemCompoundId" />
					</Compare>
				</MAX>
				<Compare metric="numSimilarity" optional="1" weight="2">
					<Param name="num1" path="?a/dbpedia-owl:molecularweight" />
					<Param name="num2" path="?b/drugbank:molecularWeightAverage" />
				</Compare>
			</AVG>
		</LinkCondition>

		<Thresholds accept="0.9" verify="0.7" />
		<Limit max="1" method="metric_value" />
		<Output acceptedLinks="drug_accepted_links.n3" verifyLinks="drug_verify_links.n3" format="n3" mode="truncate" />
		<SyncSettings>
			<SourceEndpoint uri="http://localhost:7788/" />
			<TargetEndpoint uri="http://localhost:7789/" />
		</SyncSettings>
	</Interlink>
</Silk>

