<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Modul%3AOSM</id>
	<title>Modul:OSM - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Modul%3AOSM"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Modul:OSM&amp;action=history"/>
	<updated>2026-05-25T09:00:04Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Modul:OSM&amp;diff=2920955&amp;oldid=prev</id>
		<title>imported&gt;Polyglot: mehrere Werte in die Daten sind möglich</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Modul:OSM&amp;diff=2920955&amp;oldid=prev"/>
		<updated>2015-09-12T05:27:55Z</updated>

		<summary type="html">&lt;p&gt;mehrere Werte in die Daten sind möglich&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local function buildquery(frame, target)&lt;br /&gt;
	local textToDisplay, leftLink, rightLink, runQueryRightAway, itemObject, itemID, query, coord, bbox, remark, overpassUrl, primitives, timeout, style, logo&lt;br /&gt;
	local args = frame.args&lt;br /&gt;
	&lt;br /&gt;
	if args.display then&lt;br /&gt;
		-- text to display on link&lt;br /&gt;
		textToDisplay = &amp;#039; &amp;#039; .. args.display&lt;br /&gt;
	else&lt;br /&gt;
		textToDisplay = &amp;#039;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if args.timeout then&lt;br /&gt;
		timeout = &amp;#039;[timeout:&amp;#039; .. args.timeout .. &amp;#039;][out:json];\n&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		timeout = &amp;#039;[timeout:20][out:json];\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if args.link and args.link == &amp;#039;no&amp;#039; then&lt;br /&gt;
		-- just return the url&lt;br /&gt;
		leftLink = &amp;#039;&amp;#039;&lt;br /&gt;
		rightLink = &amp;#039;&amp;#039;&lt;br /&gt;
		textToDisplay = &amp;#039;&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		leftLink = &amp;#039;[&amp;#039;&lt;br /&gt;
		rightLink = &amp;#039;]&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if args.run and args.run == &amp;#039;no&amp;#039; then&lt;br /&gt;
		-- don&amp;#039;t run immediately&lt;br /&gt;
		runQueryRightAway = &amp;#039;&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		runQueryRightAway = &amp;#039;&amp;amp;R&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if args.id then&lt;br /&gt;
		-- build query for specific Q-item(s) &lt;br /&gt;
		itemID = args.id&lt;br /&gt;
		pcall(function () itemObject = mw.wikibase.getEntityObject(mw.text.split(itemID,&amp;quot;;&amp;quot;)[1]) end)&lt;br /&gt;
	else&lt;br /&gt;
		itemObject = mw.wikibase.getEntityObject()&lt;br /&gt;
		if itemObject == nil then&lt;br /&gt;
			return &amp;quot;This page doesn&amp;#039;t have a wikidata entry&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
		-- build query for current page&lt;br /&gt;
		itemID = itemObject.id&lt;br /&gt;
	end&lt;br /&gt;
	-- Always perform a regular expression based search&lt;br /&gt;
        -- It happens that multiple values are in the data&lt;br /&gt;
	itemID = &amp;#039;&amp;quot;~&amp;quot;(^|;)(&amp;#039; .. itemID:gsub(&amp;quot;;&amp;quot;, &amp;quot;\|&amp;quot;) .. &amp;#039;)(;|$)&amp;#039;&lt;br /&gt;
&lt;br /&gt;
	if args.query then&lt;br /&gt;
		-- user can add their own tags to filter on&lt;br /&gt;
		query = args.query&lt;br /&gt;
	else&lt;br /&gt;
		query = &amp;#039;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if args.coord and not(args.limitToBBOX==&amp;#039;no&amp;#039;) then&lt;br /&gt;
		-- The user can provide coordinates and a zoom factor&lt;br /&gt;
		coord = &amp;#039;&amp;amp;C=&amp;#039; .. args.coord&lt;br /&gt;
		-- In that case we can limit the search to the area in view&lt;br /&gt;
		bbox = &amp;#039;({{bbox}})&amp;#039;&lt;br /&gt;
		-- and tell them how to search wider.&lt;br /&gt;
		remark = &amp;#039; // remove the &amp;#039; .. bbox .. &amp;#039;if you want the query to be executed globally&amp;#039;&lt;br /&gt;
	else&lt;br /&gt;
		coord = &amp;#039;&amp;#039;&lt;br /&gt;
		bbox = &amp;#039;&amp;#039;&lt;br /&gt;
		remark = &amp;#039;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	overpassUrl = timeout .. &amp;#039;(\n&amp;#039;&lt;br /&gt;
	-- if the user specifies prim(itives), but then leaves the string empty, abort&lt;br /&gt;
	if args.prim then&lt;br /&gt;
		if args.prim == &amp;#039;&amp;#039; then&lt;br /&gt;
			return &amp;quot;Please indicate which primitives you want to query for&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
		primitives = args.prim&lt;br /&gt;
	else&lt;br /&gt;
		primitives = &amp;#039;nwr&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	if primitives:find(&amp;quot;n&amp;quot;) then&lt;br /&gt;
		-- Include nodes&lt;br /&gt;
		overpassUrl = overpassUrl .. &amp;#039;node[&amp;quot;&amp;#039; .. target .. itemID ..&amp;#039;&amp;quot;]&amp;#039; .. query .. bbox .. &amp;#039;;&amp;#039; .. remark .. &amp;#039;\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if primitives:find(&amp;quot;w&amp;quot;) then&lt;br /&gt;
		-- Include ways&lt;br /&gt;
		overpassUrl = overpassUrl .. &amp;#039;way[&amp;quot;&amp;#039; .. target .. itemID .. &amp;#039;&amp;quot;]&amp;#039; .. query .. bbox .. &amp;#039;;\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
	if primitives:find(&amp;quot;r&amp;quot;) then&lt;br /&gt;
		-- Include relations&lt;br /&gt;
		overpassUrl = overpassUrl .. &amp;#039;relation[&amp;quot;&amp;#039; .. target .. itemID .. &amp;#039;&amp;quot;]&amp;#039; .. query .. bbox .. &amp;#039;;\n&amp;gt;&amp;gt;;\n&amp;#039;&lt;br /&gt;
	end	&lt;br /&gt;
	overpassUrl = overpassUrl .. &amp;#039;);\n&amp;#039;&lt;br /&gt;
	overpassUrl = overpassUrl .. &amp;#039;out geom;\n&amp;#039;&lt;br /&gt;
	if args.style then&lt;br /&gt;
			style = args.style&lt;br /&gt;
	else&lt;br /&gt;
		if args.logo then&lt;br /&gt;
			logo = &amp;quot;  icon-image: url(&amp;quot; .. args.logo .. &amp;#039;);\n&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			if itemObject then&lt;br /&gt;
				logo = tostring(itemObject:formatPropertyValues(&amp;#039;P154&amp;#039;)[&amp;#039;value&amp;#039;]):gsub(&amp;quot;&amp;amp;#39;&amp;quot;, &amp;quot;&amp;#039;&amp;quot;)&lt;br /&gt;
			end&lt;br /&gt;
			if logo and not(logo == &amp;#039;&amp;#039;) then&lt;br /&gt;
				logo = &amp;#039;  icon-image: url(&amp;quot;https://commons.wikimedia.org/wiki/Special:Redirect/file/&amp;#039;.. logo .. &amp;#039;&amp;quot;);\n&amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		if logo then&lt;br /&gt;
			style = &amp;quot;node [&amp;quot;.. target ..&amp;quot;]{\n  text: name;\n&amp;quot;.. logo .. &amp;quot;  icon-width: 32;}&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if style then&lt;br /&gt;
		overpassUrl = overpassUrl .. &amp;#039;{{style:\n&amp;#039; .. style .. &amp;#039;\n}}\n&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return leftLink .. &amp;#039;http://overpass-turbo.eu/?Q=&amp;#039; .. mw.uri.encode(overpassUrl, &amp;quot;PATH&amp;quot; ) .. coord .. runQueryRightAway .. textToDisplay .. rightLink&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
function p.overpass( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.wd( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.pt( frame )&lt;br /&gt;
 	frame.args.style = &amp;quot;node {\n  opacity: 0;\n  fill-opacity: 0;}\nnode[highway=bus_stop], way[highway=bus_stop]{\n  text: name;\n  icon-image: url(&amp;#039;icons/maki/bus-18.png&amp;#039;);\n  icon-width: 18;}&amp;quot;&lt;br /&gt;
 	frame.args.prim = &amp;quot;r&amp;quot;&lt;br /&gt;
 	frame.args.timeout = 50&lt;br /&gt;
	return buildquery(frame, &amp;#039;wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.etym( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;name:etymology:wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.subject( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;subject:wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.artist( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;artist:wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.architect( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;architect:wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.operator( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;operator:wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.brand( frame )&lt;br /&gt;
	return buildquery(frame, &amp;#039;brand:wikidata&amp;#039;)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Polyglot</name></author>
	</entry>
</feed>