
The XALAN Logo - Trademark Description
--------------------------------------

Prepared By:  

	Steven J. Hathaway

	(shathaway@apache.org)

	September 3, 2011



Prepared for:

	The Apache Software Foundation

--------------------------------------

Graphic: A stylized version of the African Xalam instrument.

Note: the difference in spelling.

	Xalam is the African Musical Instrument
	Xalan is the Apache Xalan Software Project


TEXT FONTS SIZE AND STYLE:

TM (trademark symbol)

	Font: Arial
	Size: 14pt
	Style: Bold)

XSLT

	Font: Arial
	Size: 22pt
	Style: Bold

Apache Software Foundation (trademark name)

	Font: Arial
	Size: 18pt
	Style: Bold
	Note: 2 space characters between words

Xalan	(trademark name)

	Font: Segoe Print
	Size: 48pt
	Style: Bold

Xalan-C	(trademark name)

	Font: Segoe Print
	Size: 48pt
	Style: Bold

Xalan-J	(trademark name)

	Font: Segoe Print
	Size: 48pt
	Style: Bold


INSTRUMENT GRAPHIC (vector equations)

	Vertical Width:		0.75 inch (3/4)
	HorizontalLength:	3.667 inch (3 2/3)

	Oval on the left,
	neck and butt on the right.

	Oval Width:		0.75 inch (3/4)
	Oval Length:		1.583 inch (1 7/12)

	Neck Width:		0.167 inch (1/6)

	Butt Width:		0.25 inch (1/4)
	Butt Length:		0.417 inch (5/12)


Description of instrument logo

	Oval: simulation of a gourd sound chamber
	With orange gradation hues

	Neck: rectangle simulating a round fingerboard
	With yellow-green gradation hues

	Butt: rounded rectangle simulating end of neck
	With olive-green hue

	String Anchor:  rounded rectangle on the gourd
	With olive-green hue

	2 strings: the full length from Anchor to Butt

	2 strings: tied to neck, at 1/2 length from Anchor to Butt

	3 Loose Tie Strings on the Butt, simulating tuning anchors

	