{
	"xml.codeLens.enabled": true,
	"xml.fileAssociations": [
		{
			"pattern": "art/actors/***.xml",
			"systemId": "file:///C:\\\\local%20stuff\\my%20projects\\0ad_mods\\mod\\art\\actors\\actor.rng"
		},
		{
			"pattern": "art/materials/*.xml",
			"systemId": "file:///C:\\\\local%20stuff\\my%20projects\\0ad_mods\\mod\\art\\materials\\material.rng"
		},
		{
			"pattern": "art/particles/*.xml",
			"systemId": "file:///C:\\\\local%20stuff\\my%20projects\\0ad_mods\\public\\art\\particles\\particle.rng"
		},
		{
			"pattern": "art/terrains/**/terrains.xml",
			"systemId": "file:///C:\\\\local%20stuff\\my%20projects\\0ad_mods\\mod\\art\\terrains\\terrain.rng"
		},
		{
			"pattern": "art/terrains/**/{[[:space:]_],*}.xml",
			"systemId": "file:///C:\\\\local%20stuff\\my%20projects\\0ad_mods\\mod\\art\\terrains\\terrain_texture.rng"
		},
		{
			"pattern": "art/variants/***.xml",
			"systemId": "file:///C:\\\\local%20stuff\\my%20projects\\0ad_mods\\public\\art\\variants\\variant.rng"
		},
		{
			"pattern": "art/textures/**textures.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\art\\textures\\texture.rng"
		},
		{
			"pattern": "audio/***.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\audio\\sound_group.rng"
		},
		{
			"pattern": "gui/**page_*.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\gui\\gui_page.rng"
		},
		{
			"pattern": "gui/**/page.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\gui\\gui_page.rng"
		},
		{
			"pattern": "gui/***[!p][!a][!g][!e]*.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\gui\\gui.rng"
		},
		{
			"pattern": "maps/***.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\maps\\scenario.rng"
		},
		{
			"pattern": "shaders/**{arb,glsl}/*.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\shaders\\program.rng"
		},
		{
			"pattern": "simulation/data/pathfinder.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\simulation\\data\\pathfinder.rng"
		},
		{
			"pattern": "simulation/data/territorymanager.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\mod\\simulation\\data\\territorymanager.rng"
		},
		{
			"pattern": "simulation/templates/***.xml",
			"systemId": "file:///C:\\local%20stuff\\my%20projects\\0ad_mods\\entity.rng"
		},
		//{
			//"pattern": "***.dae",
			//"systemId": "https://www.khronos.org/files/collada_schema_1_4"
		//}
	],
	"xml.filePathSupport.mappings": [
		{
			"pattern": "art/actors/***.xml",
			"expressions": [
				{
					"xpath": "actor/group/variant/@file",
					"filter": [".xml"]
				},
				{
					"xpath": "actor/group/variant/animations/animation/@file",
					"filter": [".dae"]
				},
				{
					"xpath": "actor/group/variant/mesh/text()",
					"filter": [".dae"]
				},
				{
					"xpath": "actor/group/variant/particles/@file",
					"filter": [".xml"]
				},
				{
					"xpath": "actor/group/variant/props/prop/@actor",
					"filter": [".xml"]
				},
				{
					"xpath": "actor/group/variant/textures/texture/@file",
					"filter": [".png", ".dds"]
				},
			]
		},
		{
			"pattern": "art/materials/***.xml",
			"expressions": [
				{
					"xpath": "material/alternative/@material",
					"filter": [".xml"]
				}
			]
		},
		{
			"pattern": "art/particles/***.xml",
			"expressions": [
				{
					"xpath": "particles/texture/text()",
					"filter": [".png"]
				}
			]
		},
		{
			"pattern": "art/terrains/***.xml",
			"expressions": [
				{
					"xpath": "terrain/textures/material/text()",
					"filter": [".xml"]
				},
				{
					"xpath": "terrain/textures/texture/@file",
					"filter": [".dds", ".png"]
				}
			]
		},
		{
			"pattern": "art/variants/***.xml",
			"expressions": [
				{
					"xpath": "variant/@file",
					"filter": [".xml"]
				},
				{
					"xpath": "variant/animations/animation/@file",
					"filter": [".dae"]
				},
				{
					"xpath": "variant/props/prop/@actor",
					"filter": [".xml"]
				},
				{
					"xpath": "variant/textures/texture/@file",
					"filter": [".png"]
				},
			]
		},
		{
			"pattern": "maps/***.xml",
			"expressions": [
				{
					"xpath": "Scenario/Entities/Entity/Template/text()",
					"filter": [".xml", ""],
					"separator": "|"
				}
			]
		},
		{
			"pattern": "simulation/templates/***.xml",
			"expressions": [
				{
					"xpath": "Entity/@parent",
					"separator": "|"
				},
				{
					"xpath": "Entity/Attack/Ranged/RangeOverlay/LineTexture/text() | Entity/Attack/Ranged/RangeOverlay/LineTextureMask/text()",
					"filter": [".png"]
				},
				{
					"xpath": "Entity/Attack/Ranged/Projectile/ActorName/text() | Entity/Attack/Ranged/Projectile/ImpactActorName/text()",
					"filter": [".xml"]
				},
				{
					"xpath": "Entity/Auras/text()",
					"separator": "\n"
				},
				{
					"xpath": "Entity/Builder/Entities/text()",
					"separator": "\n"
				},
				{
					"xpath": "Entity/Health/SpawnEntityOnDeath/text()"
				},
				{
					"xpath": "Entity/Identity/Icon/text()",
					"filter": [".png"]
				},
				{
					"xpath": "Entity/Identity/SelectionGroupName/text()"
				},
				{
					"xpath": "Entity/Minimap/Icon/text()",
					"filter": [".png"]
				},
				{
					"xpath": "Entity/Pack/Entity/text()"
				},
				{
					"xpath": "Entity/Player/Formations/text()",
					"separator": "\n"
				},
				{
					"xpath": "Entity/Promotion/Entity/text()"
				},
				{
					"xpath": "Entity/Selectable/Overlay/Texture/*/text()",
					"filter": [".png"]
				},
				{
					"xpath": "Entity/Selectable/Overlay/Outline/LineTexture/text() | Entity/Selectable/Overlay/Outline/LineTextureMask/text()",
					"filter": [".png"]
				},
				{
					"xpath": "Entity/Sound/SoundGroups/*/text()",
					"filter": [".xml"]
				},
				{
					"xpath": "Entity/Trainer/Entities/text()",
					"separator": "\n"
				},
				{
					"xpath": "Entity/Upgrade/*/Entity/text()"
				},
				{
					"xpath": "Entity/VisualActor/Actor/text() | Entity/VisualActor/FoundationActor/text()",
					"filter": [".xml"]
				},
				{
					"xpath": "Entity/Wallset/Templates/Tower/text() | Entity/Wallset/Templates/Gate/text() | Entity/Wallset/Templates/Fort/text() | Entity/Wallset/Templates/WallLong/text() | Entity/Wallset/Templates/WallMedium/text() | Entity/Wallset/Templates/WallShort/text() | Entity/Wallset/Templates/WallCurves/text() | Entity/Wallset/Templates/WallEnd/text()"
				}
			]
		}
	],
	"xml.format.maxLineWidth": 80,
	"xml.format.enforceQuoteStyle": "preferred",
	"xml.server.vmargs": "-Xmx128M",
	"xml.symbols.excluded": ["***.dae"],
	"xml.symbols.filters": [
		{
			"pattern": "art/***.xml",
			"expressions": [
				{
					"xpath": "//@name",
					"inlineAttribute": true,
					"showAttributeName": false
				},
				{
					"xpath": "//text()"
				},
				{
					"xpath": "//@*"
				}
			]
		}
	],
	"xml.symbols.maxItemsComputed": 50000,
	"xml.trace.server": "verbose",
}
