<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://louiki.elyseum.fr/template_test/index.php?action=history&amp;feed=atom&amp;title=Module%3ACarte_interactive</id>
	<title>Module:Carte interactive - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://louiki.elyseum.fr/template_test/index.php?action=history&amp;feed=atom&amp;title=Module%3ACarte_interactive"/>
	<link rel="alternate" type="text/html" href="https://louiki.elyseum.fr/template_test/index.php?title=Module:Carte_interactive&amp;action=history"/>
	<updated>2026-07-21T22:34:35Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.32.1</generator>
	<entry>
		<id>https://louiki.elyseum.fr/template_test/index.php?title=Module:Carte_interactive&amp;diff=800&amp;oldid=prev</id>
		<title>Louis : 1 révision importée</title>
		<link rel="alternate" type="text/html" href="https://louiki.elyseum.fr/template_test/index.php?title=Module:Carte_interactive&amp;diff=800&amp;oldid=prev"/>
		<updated>2019-02-08T10:40:33Z</updated>

		<summary type="html">&lt;p&gt;1 révision importée&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Version du 8 février 2019 à 10:40&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;fr&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(Aucune différence)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Louis</name></author>
		
	</entry>
	<entry>
		<id>https://louiki.elyseum.fr/template_test/index.php?title=Module:Carte_interactive&amp;diff=799&amp;oldid=prev</id>
		<title>Zebulon84 le 5 novembre 2018 à 15:39</title>
		<link rel="alternate" type="text/html" href="https://louiki.elyseum.fr/template_test/index.php?title=Module:Carte_interactive&amp;diff=799&amp;oldid=prev"/>
		<updated>2018-11-05T15:39:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
local coord = require( &amp;quot;Module:Coordinates&amp;quot; )&lt;br /&gt;
&lt;br /&gt;
local function normalise(args)&lt;br /&gt;
	local lookup_table = {}&lt;br /&gt;
	lookup_table['largeur']= 'width'&lt;br /&gt;
	lookup_table['hauteur'] = 'height'&lt;br /&gt;
	lookup_table['texte'] = 'text'&lt;br /&gt;
	lookup_table['legende'] = 'text'&lt;br /&gt;
	lookup_table['légende'] = 'text'&lt;br /&gt;
	lookup_table['déscription'] = 'description'&lt;br /&gt;
	lookup_table['titre'] = 'title'&lt;br /&gt;
	lookup_table['sans_cadre'] = 'frameless'&lt;br /&gt;
	lookup_table['symbole'] = 'symbol'&lt;br /&gt;
	lookup_table['couleur'] = 'color'&lt;br /&gt;
	lookup_table['taille'] = 'size'&lt;br /&gt;
	lookup_table['epaisseur'] = 'size'&lt;br /&gt;
	lookup_table['épaisseur'] = 'size'&lt;br /&gt;
	lookup_table['opacite'] = 'opacity'&lt;br /&gt;
	lookup_table['opacité'] = 'opacity'&lt;br /&gt;
	lookup_table['epaisseur contour'] = 'size'&lt;br /&gt;
	lookup_table['épaisseur contour'] = 'size'&lt;br /&gt;
	lookup_table['couleur contour'] = 'color'&lt;br /&gt;
	lookup_table['opacite contour'] = 'opacity'&lt;br /&gt;
	lookup_table['opacité contour'] = 'opacity'&lt;br /&gt;
	lookup_table['couleur fond'] = 'fill_color'&lt;br /&gt;
	lookup_table['opacite fond'] = 'fill_opacity'&lt;br /&gt;
	lookup_table['opacité fond'] = 'fill_opacity'&lt;br /&gt;
	lookup_table['geoline'] = 'contour'&lt;br /&gt;
	lookup_table['requête'] = 'query'&lt;br /&gt;
	lookup_table['requete'] = 'query'&lt;br /&gt;
	lookup_table['request'] = 'query'&lt;br /&gt;
	lookup_table['langue'] = 'lang'&lt;br /&gt;
	&lt;br /&gt;
	for k, v in pairs(lookup_table) do&lt;br /&gt;
		if args[k] ~= nil then&lt;br /&gt;
			args[v] = args[k]&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return args&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.marker(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	&lt;br /&gt;
	if args[1] == nil and args.latlng == nil then --One coordinate is mandatory&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local properties = {}&lt;br /&gt;
	properties['marker-color'] = args.color == nil and '#555555' or args.color&lt;br /&gt;
	properties['marker-size'] = args.size == nil and 'medium' or args.size&lt;br /&gt;
	properties['marker-symbol'] = args.symbol == nil and '' or args.symbol&lt;br /&gt;
	properties['title'] = args.title == nil and '' or args.title&lt;br /&gt;
	properties['description'] = args.description == nil and '' or args.description&lt;br /&gt;
	&lt;br /&gt;
	local latlng = mw.text.split( (args[1] == nil and args.latlng or args[1]), &amp;quot;,&amp;quot;, true )&lt;br /&gt;
	&lt;br /&gt;
	if args.randomise ~= nil then&lt;br /&gt;
		latlng[1] = latlng[1] + math.random(-tonumber(args.randomise), tonumber(args.randomise))/100000&lt;br /&gt;
		latlng[2] = latlng[2] + math.random(-tonumber(args.randomise), tonumber(args.randomise))/100000&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local geojson = {&lt;br /&gt;
            type = &amp;quot;Feature&amp;quot;,&lt;br /&gt;
            properties = properties,&lt;br /&gt;
            geometry = {&lt;br /&gt;
                type = &amp;quot;Point&amp;quot;,&lt;br /&gt;
                coordinates = {&lt;br /&gt;
                	tonumber(latlng[2]), &lt;br /&gt;
                	tonumber(latlng[1]),&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    return mw.text.jsonEncode(geojson) .. ','&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.line(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	&lt;br /&gt;
	if args[2] == nil then --At least two coordinates are mandatory&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local properties = {}&lt;br /&gt;
	properties[&amp;quot;stroke&amp;quot;] = args.color == nil and '#555555' or args.color&lt;br /&gt;
	properties[&amp;quot;stroke-width&amp;quot;] = args.size == nil and 2 or tonumber(args.size)&lt;br /&gt;
	properties[&amp;quot;stroke-opacity&amp;quot;] = args.opacity == nil and 1 or tonumber(args.opacity)&lt;br /&gt;
	properties['title'] = args.title == nil and '' or args.title&lt;br /&gt;
	properties['description'] = args.description == nil and '' or args.description&lt;br /&gt;
	&lt;br /&gt;
	local coordinates = {}&lt;br /&gt;
	local i = 1&lt;br /&gt;
	while args[i] ~= nil do&lt;br /&gt;
		local latlng = mw.text.split( args[i], &amp;quot;,&amp;quot;, true )&lt;br /&gt;
		coordinates[i] = {&lt;br /&gt;
        	tonumber(latlng[2]), &lt;br /&gt;
        	tonumber(latlng[1]),&lt;br /&gt;
        }&lt;br /&gt;
		i = i+1&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local geojson = {&lt;br /&gt;
            type = &amp;quot;Feature&amp;quot;,&lt;br /&gt;
            properties = properties,&lt;br /&gt;
            geometry = {&lt;br /&gt;
                type = &amp;quot;LineString&amp;quot;,&lt;br /&gt;
                coordinates = coordinates&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    return mw.text.jsonEncode(geojson) .. ','&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.polygon(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	&lt;br /&gt;
	if args[3] == nil then --At least three coordinates are mandatory&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local properties = {}&lt;br /&gt;
	properties[&amp;quot;stroke&amp;quot;] = args.color == nil and '#555555' or args.color&lt;br /&gt;
	properties[&amp;quot;stroke-width&amp;quot;] = args.size == nil and 2 or tonumber(args.size)&lt;br /&gt;
	properties[&amp;quot;stroke-opacity&amp;quot;] = args.opacity == nil and 1 or tonumber(args.opacity)&lt;br /&gt;
	properties[&amp;quot;fill&amp;quot;] = args.fill_color == nil and '#555555' or args.fill_color&lt;br /&gt;
	properties[&amp;quot;fill-opacity&amp;quot;] = args.fill_opacity == nil and 0.3 or tonumber(args.fill_opacity)&lt;br /&gt;
	properties['title'] = args.title == nil and '' or args.title&lt;br /&gt;
	properties['description'] = args.description == nil and '' or args.description&lt;br /&gt;
	&lt;br /&gt;
	local coordinates = {}&lt;br /&gt;
	local i = 1&lt;br /&gt;
	while args[i] ~= nil do&lt;br /&gt;
		local latlng = mw.text.split( args[i], &amp;quot;,&amp;quot;, true )&lt;br /&gt;
		coordinates[i] = {&lt;br /&gt;
        	tonumber(latlng[2]), &lt;br /&gt;
        	tonumber(latlng[1]),&lt;br /&gt;
        }&lt;br /&gt;
		i = i+1&lt;br /&gt;
	end&lt;br /&gt;
	local latlng = mw.text.split( args[1], &amp;quot;,&amp;quot;, true )&lt;br /&gt;
	coordinates[i] = {&lt;br /&gt;
    	tonumber(latlng[2]), &lt;br /&gt;
    	tonumber(latlng[1]),&lt;br /&gt;
    }&lt;br /&gt;
	&lt;br /&gt;
	local geojson = {&lt;br /&gt;
            type = &amp;quot;Feature&amp;quot;,&lt;br /&gt;
            properties = properties,&lt;br /&gt;
            geometry = {&lt;br /&gt;
                type = &amp;quot;Polygon&amp;quot;,&lt;br /&gt;
                coordinates = { coordinates }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    return mw.text.jsonEncode(geojson) .. ','&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.query(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	&lt;br /&gt;
	local query&lt;br /&gt;
	if args[1] ~= nil then&lt;br /&gt;
		query = args[1]&lt;br /&gt;
	else&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local properties = {}&lt;br /&gt;
	properties[&amp;quot;stroke&amp;quot;] = args.color == nil and '#555555' or args.color&lt;br /&gt;
	properties[&amp;quot;stroke-width&amp;quot;] = args.size == nil and 2 or tonumber(args.size)&lt;br /&gt;
	properties[&amp;quot;stroke-opacity&amp;quot;] = args.opacity == nil and 1 or tonumber(args.opacity)&lt;br /&gt;
	properties[&amp;quot;fill&amp;quot;] = args.fill_color == nil and '#555555' or args.fill_color&lt;br /&gt;
	properties[&amp;quot;fill-opacity&amp;quot;] = args.fill_opacity == nil and 0.3 or tonumber(args.fill_opacity)&lt;br /&gt;
	properties['title'] = args.title == nil and '' or args.title&lt;br /&gt;
	properties['description'] = args.description == nil and '' or args.description&lt;br /&gt;
	&lt;br /&gt;
	local service = &amp;quot;geoshape&amp;quot;&lt;br /&gt;
	if args.contour ~= nil then&lt;br /&gt;
		service = &amp;quot;geoline&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local geojson = {&lt;br /&gt;
		type = &amp;quot;ExternalData&amp;quot;,&lt;br /&gt;
		service = service,&lt;br /&gt;
		query = query,&lt;br /&gt;
		properties = properties,&lt;br /&gt;
	}&lt;br /&gt;
    return mw.text.jsonEncode(geojson) .. ','&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.osm(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	&lt;br /&gt;
	local qid&lt;br /&gt;
	if args[1] == nil then&lt;br /&gt;
		qid = mw.wikibase.getEntityIdForCurrentPage()&lt;br /&gt;
	else&lt;br /&gt;
		qid = args[1]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local properties = {}&lt;br /&gt;
	properties[&amp;quot;stroke&amp;quot;] = args.color == nil and '#555555' or args.color&lt;br /&gt;
	properties[&amp;quot;stroke-width&amp;quot;] = args.size == nil and 2 or tonumber(args.size)&lt;br /&gt;
	properties[&amp;quot;stroke-opacity&amp;quot;] = args.opacity == nil and 1 or tonumber(args.opacity)&lt;br /&gt;
	properties[&amp;quot;fill&amp;quot;] = args.fill_color == nil and '#555555' or args.fill_color&lt;br /&gt;
	properties[&amp;quot;fill-opacity&amp;quot;] = args.fill_opacity == nil and 0.3 or tonumber(args.fill_opacity)&lt;br /&gt;
	properties['title'] = args.title == nil and '' or args.title&lt;br /&gt;
	properties['description'] = args.description == nil and '' or args.description&lt;br /&gt;
	&lt;br /&gt;
	local service = &amp;quot;geoshape&amp;quot;&lt;br /&gt;
	if args.contour ~= nil then&lt;br /&gt;
		service = &amp;quot;geoline&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local geojson = {&lt;br /&gt;
		type = &amp;quot;ExternalData&amp;quot;,&lt;br /&gt;
		service = service,&lt;br /&gt;
		ids = qid,&lt;br /&gt;
		properties = properties,&lt;br /&gt;
	}&lt;br /&gt;
    return mw.text.jsonEncode(geojson) .. ','&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.commons(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	&lt;br /&gt;
	if args[1] == nil then&lt;br /&gt;
		return&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local page_name = args[1]&lt;br /&gt;
	if mw.ustring.find(page_name, &amp;quot;Data:&amp;quot;, 1, true) == 1 then&lt;br /&gt;
		page_name = string.sub(page_name, 6)&lt;br /&gt;
	end&lt;br /&gt;
	if mw.ustring.find(page_name, &amp;quot;.map&amp;quot;, -4, true) == nil then&lt;br /&gt;
		page_name = page_name .. '.map'&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local geojson = {&lt;br /&gt;
		type = &amp;quot;ExternalData&amp;quot;,&lt;br /&gt;
		service = &amp;quot;page&amp;quot;,&lt;br /&gt;
		title = page_name&lt;br /&gt;
	}&lt;br /&gt;
    return mw.text.jsonEncode(geojson) .. ','&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.wikidata(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	local qid&lt;br /&gt;
	&lt;br /&gt;
	local properties = {}&lt;br /&gt;
	properties['marker-color'] = args.color == nil and '#555555' or args.color&lt;br /&gt;
	properties['marker-size'] = args.size == nil and 'medium' or args.size&lt;br /&gt;
	properties['marker-symbol'] = args.symbol == nil and '' or args.symbol&lt;br /&gt;
	properties['title'] = args.title == nil and '' or args.title&lt;br /&gt;
	properties['description'] = args.description == nil and '' or args.description&lt;br /&gt;
	&lt;br /&gt;
	if args[1] == nil then&lt;br /&gt;
		qid = mw.wikibase.getEntityIdForCurrentPage()&lt;br /&gt;
	else&lt;br /&gt;
		qid = args[1]&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local entity = mw.wikibase.getEntity( qid )&lt;br /&gt;
	local value = entity:formatPropertyValues( 'P625', { mw.wikibase.entity.claimRanks.RANK_NORMAL, mw.wikibase.entity.claimRanks.RANK_PREFERRED, mw.wikibase.entity.claimRanks.RANK_TRUTH } ).value&lt;br /&gt;
	if value == nil then&lt;br /&gt;
		error('La propriété P625 &amp;quot;coordonnées géographiques&amp;quot; n\'est pas renseigné sur Wikidata')&lt;br /&gt;
	end&lt;br /&gt;
	latlng = mw.text.split( mw.text.decode(value), &amp;quot;, &amp;quot;, true )&lt;br /&gt;
	geojson = {&lt;br /&gt;
		type = &amp;quot;Feature&amp;quot;,&lt;br /&gt;
		geometry = {&lt;br /&gt;
			type = &amp;quot;Point&amp;quot;,&lt;br /&gt;
			coordinates = {&lt;br /&gt;
				coord._dms2dec(coord._parsedmsstring(latlng[2])), &lt;br /&gt;
				coord._dms2dec(coord._parsedmsstring(latlng[1]))&lt;br /&gt;
			}&lt;br /&gt;
		},&lt;br /&gt;
		properties = properties&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	return mw.text.jsonEncode(geojson) .. ','&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.tag(frame)&lt;br /&gt;
	local args = normalise(frame:getParent().args)&lt;br /&gt;
	&lt;br /&gt;
	-- Choose the tagname&lt;br /&gt;
	local tagname = 'mapframe'&lt;br /&gt;
	if args.lien ~= nil then&lt;br /&gt;
		tagname = 'maplink'&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- Manage the basics tag params&lt;br /&gt;
	local tagArgs = {&lt;br /&gt;
		zoom = args.zoom == nil and args.commons == nil and 14 or tonumber(args.zoom),&lt;br /&gt;
		height = args.height == nil and 420 or tonumber(args.height),&lt;br /&gt;
		width = args.width == nil and 420 or tonumber(args.width),&lt;br /&gt;
		align = args.align == nil and 'right' or args.align,&lt;br /&gt;
		text = args.text,&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	if args[1] ~= nil and (args.latitude ~= nil or args.longitude ~= nil) then&lt;br /&gt;
		error('La ou les valeurs de longitude et/ou de latitude ont été fournis via deux syntaxe différentes. Consultez la documentation du [[Modèle:Carte interactive]] pour obtenir une syntaxe correcte')&lt;br /&gt;
	elseif args.latitude ~= nil and args.longitude ~= nil then&lt;br /&gt;
		tagArgs.latitude = tonumber(args.latitude)&lt;br /&gt;
		tagArgs.longitude = tonumber(args.longitude)&lt;br /&gt;
	elseif args[1] ~= nil and args[2] ~= nil then&lt;br /&gt;
		tagArgs.latitude = tonumber(args[1])&lt;br /&gt;
		tagArgs.longitude = tonumber(args[2])&lt;br /&gt;
	elseif args.commons == nil then --The only exception allowed to put latitude and longitude away is when using an external map stored on commons&lt;br /&gt;
		error('Les paramètres de latitude et/ou de longitude sont absent')&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args.frameless then&lt;br /&gt;
		tagArgs.frameless = ''&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args.lang ~= nil then&lt;br /&gt;
		tagArgs.lang = args.lang&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Manage the basics GeoJSON params&lt;br /&gt;
	local geojson = {}&lt;br /&gt;
	&lt;br /&gt;
	if args.commons ~= nil then&lt;br /&gt;
		geojson[#geojson+1] = {&lt;br /&gt;
			type = &amp;quot;ExternalData&amp;quot;,&lt;br /&gt;
			service = &amp;quot;page&amp;quot;,&lt;br /&gt;
			title = args.commons,&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args.marqueur ~= nil then&lt;br /&gt;
		geojson[#geojson+1] = {&lt;br /&gt;
			type = &amp;quot;Feature&amp;quot;,&lt;br /&gt;
			geometry = {&lt;br /&gt;
				type = &amp;quot;Point&amp;quot;,&lt;br /&gt;
				coordinates = {&lt;br /&gt;
					tagArgs.longitude, &lt;br /&gt;
					tagArgs.latitude&lt;br /&gt;
				}&lt;br /&gt;
			},&lt;br /&gt;
			properties = {&lt;br /&gt;
				title = args.title == nil and '' or args.title,&lt;br /&gt;
				description = args.description == nil and '' or args.description,&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args.osm ~= nil then&lt;br /&gt;
		local qid&lt;br /&gt;
		if args.osm == 'oui' then&lt;br /&gt;
			qid = mw.wikibase.getEntityIdForCurrentPage()&lt;br /&gt;
		else&lt;br /&gt;
			qid = args.osm&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		local service = &amp;quot;geoshape&amp;quot;&lt;br /&gt;
		if args.contour ~= nil then&lt;br /&gt;
			service = &amp;quot;geoline&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		geojson[#geojson+1] = {&lt;br /&gt;
			type = &amp;quot;ExternalData&amp;quot;,&lt;br /&gt;
			service = service,&lt;br /&gt;
			ids = qid,&lt;br /&gt;
			properties = {&lt;br /&gt;
				title = args.title == nil and '' or args.title,&lt;br /&gt;
				description = args.description == nil and '' or args.description,&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local qid = args.wikidata&lt;br /&gt;
	if qid and not mw.wikibase.isValidEntityId( qid ) then&lt;br /&gt;
		qid = mw.wikibase.getEntityIdForCurrentPage()&lt;br /&gt;
	end&lt;br /&gt;
	if qid and mw.wikibase.isValidEntityId( qid ) then&lt;br /&gt;
		local entity = mw.wikibase.getEntity( qid )&lt;br /&gt;
		local value = entity:formatPropertyValues( 'P625', { mw.wikibase.entity.claimRanks.RANK_NORMAL, mw.wikibase.entity.claimRanks.RANK_PREFERRED, mw.wikibase.entity.claimRanks.RANK_TRUTH } ).value&lt;br /&gt;
		if value == '' then&lt;br /&gt;
			error('La propriété P625 &amp;quot;coordonnées géographiques&amp;quot; n\'est pas renseigné sur Wikidata')&lt;br /&gt;
		end&lt;br /&gt;
		latlng = mw.text.split( mw.text.decode(value), &amp;quot;, &amp;quot;, true )&lt;br /&gt;
		geojson[#geojson+1] = {&lt;br /&gt;
			type = &amp;quot;Feature&amp;quot;,&lt;br /&gt;
			geometry = {&lt;br /&gt;
				type = &amp;quot;Point&amp;quot;,&lt;br /&gt;
				coordinates = {&lt;br /&gt;
					coord._dms2dec(coord._parsedmsstring(latlng[2])), &lt;br /&gt;
					coord._dms2dec(coord._parsedmsstring(latlng[1]))&lt;br /&gt;
				}&lt;br /&gt;
			},&lt;br /&gt;
			properties = {&lt;br /&gt;
				title = args.title == nil and '' or args.title,&lt;br /&gt;
				description = args.description == nil and '' or args.description,&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args.query ~= nil then&lt;br /&gt;
		local service = &amp;quot;geoshape&amp;quot;&lt;br /&gt;
		if args.contour ~= nil then&lt;br /&gt;
			service = &amp;quot;geoline&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		geojson[#geojson+1] = {&lt;br /&gt;
			type = &amp;quot;ExternalData&amp;quot;,&lt;br /&gt;
			service = service,&lt;br /&gt;
			query = args.query,&lt;br /&gt;
			properties = {&lt;br /&gt;
				title = args.title == nil and '' or args.title,&lt;br /&gt;
				description = args.description == nil and '' or args.description,&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	--Manage external GeoJSON datas included through models&lt;br /&gt;
	if args.formes ~= nil then&lt;br /&gt;
		geojson[#geojson+1] = {&lt;br /&gt;
			type = &amp;quot;FeatureCollection&amp;quot;,&lt;br /&gt;
			features = mw.text.jsonDecode('['..args.formes..']')&lt;br /&gt;
		}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args.externes ~= nil then&lt;br /&gt;
		local externes = mw.text.jsonDecode('['..args.externes..']')&lt;br /&gt;
		for k, externe in pairs(externes) do&lt;br /&gt;
			geojson[#geojson+1] = externe&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return frame:extensionTag(tagname, mw.text.jsonEncode(geojson), tagArgs)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Zebulon84</name></author>
		
	</entry>
</feed>