<SyntaxDefinition name="DnaML" extensions=".dnaml" xmlns="http://icsharpcode.net/sharpdevelop/syntaxdefinition/2008">
	<Color name="Comment" foreground="Green" exampleText="-- comment" />
	<Color name="Char" foreground="Red" exampleText="name = 'abc'"/>
	<Color name="Keywords" fontWeight="bold" foreground="Blue" exampleText="SELECT FROM"/>
	<Color name="Datatypes" fontWeight="bold" foreground="Magenta" exampleText="NUMERIC, DATETIME, VARCHAR"/>
	<Color name="SpecOpt" foreground="DarkMagenta"  />
	<Color name="Bracket" foreground="DarkMagenta" />
	<Color name="AttributeName" foreground="Red" exampleText="attribute:value,attribute" />
	<Color name="AttributeValue" foreground="Blue" exampleText="attribute:value" />
	<Color name="Array" foreground="Black" exampleText="ABC, DEF, ..." />

	<Property name="DocCommentMarker" value="///" />

	<RuleSet name="CommentMarkerSet">
		<Keywords fontWeight="bold" foreground="Red">
			<Word>TODO</Word>
			<Word>FIXME</Word>
		</Keywords>
		<Keywords fontWeight="bold" foreground="#E0E000">
			<Word>HACK</Word>
			<Word>UNDONE</Word>
		</Keywords>
	</RuleSet>

	<RuleSet name="SpecOpt">
		<Span color="SpecOpt" multiline="false">
			<Begin>\[</Begin>
			<End>\]</End>
			<RuleSet>
				<Span color="AttributeValue" multiline="true">
					<Begin>"</Begin>
					<End>"</End>
				</Span>
				<Span color="AttributeValue" multiline="true">
					<Begin>'</Begin>
					<End>'</End>
				</Span>
				<Rule color="AttributeName">\b[a-zA-Z0-9]+\b</Rule>
				<Rule color="AttributeValue">:[a-zA-Z0-9]+\b</Rule>
				<Rule color="Array">,</Rule>
			</RuleSet>
		</Span>
	</RuleSet>

	<RuleSet ignoreCase="true">
		<Import ruleSet="SpecOpt"/>

		<Rule color="Bracket">\{</Rule>
		<Rule color="Bracket">\}</Rule>
		<Rule color="AttributeValue">(=|!=|&lt;&gt;|&gt;|&lt;|&gt;=|&lt;=)</Rule>

		<Span color="Comment" ruleSet="CommentMarkerSet">
			<Begin>--</Begin>
		</Span>

		<Span color="Comment" ruleSet="CommentMarkerSet" multiline="true">
			<Begin>/\*</Begin>
			<End>\*/</End>
		</Span>

		<Span color="Char">
			<Begin>'</Begin>
			<End>'</End>
		</Span>

		<Keywords color="Datatypes">
			<Word>BOOLEAN</Word>
			<Word>DATETIMEOFFSET</Word>
			<Word>DATETIME</Word>
			<Word>DATE</Word>
			<Word>TIME</Word>
			<Word>TIMESTAMP</Word>
			<Word>FLOAT</Word>
			<Word>DECIMAL</Word>
			<Word>MONEY</Word>
			<Word>SMALLMONEY</Word>
			<Word>BIGINT</Word>
			<Word>INT</Word>
			<Word>SMALLINT</Word>
			<Word>TINYINT</Word>
			<Word>NVARCHAR</Word>
			<Word>NCHAR</Word>
			<Word>VARCHAR</Word>
			<Word>CHAR</Word>
			<Word>VARBINARY</Word>
			<Word>BINARY</Word>
			<Word>UNIQUEIDENTIFIER</Word>
			<Word>GEOGRAPHY</Word>
			<Word>SPARTAL</Word>
			<Word>XML</Word>
			<Word>JSON</Word>
		</Keywords>
		<Keywords color="Keywords">
			<Word>table</Word>
			<Word>sources</Word>
			<Word>source</Word>
			<Word>origins</Word>
			<Word>object</Word>
			<Word>columns</Word>
			<Word>folder</Word>
			<Word>view</Word>
			<Word>identity</Word>
			<Word>not</Word>
			<Word>unique</Word>
			<Word>key</Word>
			<Word>primary</Word>
			<Word>default</Word>
			<Word>null</Word>
			<Word>as</Word>
			<Word>union</Word>
			<Word>join</Word>
			<Word>between</Word>
			<Word>and</Word>
			<Word>foreignobject</Word>
			<Word>primaryobject</Word>
			<Word>inferredmember</Word>
			<Word>reference</Word>
			<Word>references</Word>
			<Word>expression</Word>
			<Word>substitutevalue</Word>
			<Word>inferredmember</Word>
		</Keywords>
	</RuleSet>

</SyntaxDefinition>