text:
.NET Development Foundation/Attributes

Reflexion: Building custom attributes

Annexes: Building custom attributes
Original text for this page authored by William "Scott" Baker

Attributes Summary
Attributes are a way to "tag" elements of your code's metadata with descriptive information that can be accessed at runtime using reflection. Attributes must derive from System.Attribute, either directly or indirectly. A multitude of attributes exist in the .NET framework; you can also define your own. There are three aspects to using attributes in your code:
 * 1) Defining a custom attribute class, which involves:
 * 2) Assigning the AttributeUsageAttribute attribute to your class.
 * 3) Writing the code to define your custom attribute class.
 * 4) Creating the parameters for your class.
 * 5) Assigning an attribute to a code member.
 * 6) Retrieving attribute information at runtime.

Creating a Custom Attribute Class
As previously mentioned, there are several predefined attributes in the .NET Framework; you may have already used them in your code. The XML parser in particular relies heavily on attributes when (de)serializing objects. You can also define your own custom attributes, as we will show here. Defining a custom attribute involves three steps:
 * 1) Assigning the AttributeUsageAttribute attribute to your class.
 * 2) Writing the code to define your custom attribute class.
 * 3) Creating the parameters for your class.

Assigning the "AttributeUsageAttribute" To Your Class
The "scope" and other characteristics of your attribute should be specified by the use of the AttributeUsageAttribute attribute. Note: In Visual Basic, use of the AttributeUsageAttribute attribute is required on all custom attributes. Applying the AttributeUsageAttribute attribute to a class: [ AttributeUsage (AttributeTargets.All, AllowMultiple = true, Inherited = false)] public Class QualityCheckAttribute : System.Attribute {  // ...  } Notice the use of " AttributeUsage " vs. "AttributeUsageAttribute". By convention, all attributes are named with the "<tt>Attribute</tt>" suffix - but the suffix can be omitted when used in code. This holds true for user defined attributes as well; the <tt>QualityCheckAttribute</tt> attribute could be referenced as either: [QualityCheck] // or... [QualityCheckAttribute] The <tt>AttributeUsageAttribute</tt> has three members: <tt>ValidOn, AllowMultiple</tt> and <tt>Inherited</tt>.

All (any element)  Delegate    GenericParameter    Parameter Assembly           Enum        Interface           Property Class              Event       Method              ReturnValue Constructor        Field       Module*             Struct *Module refers to a portable executable (.exe or .dll), and not a Visual Basic standard module. You can also combine target types as a bitwise OR operation to specify multiple acceptable values: [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)] [QualityCheck("Scott Baker", "02/28/06", IsApproved = true,   Comment = "This code follows all established guidelines.  Release approved.")] [QualityCheck("Matt Kauffman", "01/15/06", IsApproved = false,   Comment = "Code quality much improved. Minor revision required.")] [QualityCheck("Joe Schmoe", 01/01/06", IsApproved = false,   Comment = "This code is a mess and needs a complete rewrite")] public class MyClass { // ...  } [AttributeUsage(AttributeTargets.Class)] public class AttrOneAttribute : Attribute {   // ...  } // This attribute will not be inherited  [AttributeUsage(AttributeTargets.Class, Inherited = false )] public class AttrTwoAttribute : Attribute {   // ...  } [AttrOne] [AttrTwo] public class ClassOne  {   // ...  } // This class inherits AttrOne from ClassOne,  // but not AttrTwo  public class ClassTwo : ClassOne {   // ...  }
 * The <tt>ValidOn</tt> member accepts <tt>AttributeTargets</tt> enum values, and restricts your attribute to the code types you specify. The default value is <tt>AttributeTargets.All</tt>. You can confine your attribute to classes, enums, return values or any of the list below:
 * <tt>AllowMultiple</tt> is a boolean value that determines whether or not an attribute can be applied more than once to a given member. The default value is <tt>false</tt>.  The example below illustrates multiple instances of the same attribute on an element of code:
 * The <tt>Inherited</tt> member determines whether attributes set on a class will be inherited by classes further down the inheritance tree. The default value is true:

Defining A Custom Attribute Class
public Class QualityCheckAttribute : System.Attribute // direct {  // ...  } public Class FinalCheck : QualityCheckAttribute  // indirect { // ... } [AttributeUsage(AllowMultiple = true, Inherited = false)] public Class QualityCheckAttribute : System.Attribute {  // ...  } As previously mentioned, the use of <tt>AttributeUsageAttribute</tt> is required in VB.  In C#, it is automatically applied with the default values if not declared.
 * Attributes are classes that inherit from <tt>System.Attribute</tt>, either directly or indirectly:
 * Attribute classes have the <tt>AttributeUsageAttribute</tt> attribute:

Creating Parameters For An Attribute
Attributes accept two types of parameters: positional and named. Positional parameters are defined by public constructors in your class, must be in the order defined and are required; named parameters are defined by public properties, can be in any order and are optional.

Positional Parameters
Positional parameters for an attribute are defined by the constructors in the class. As with any class, constructors can be overloaded and a default constructor that takes no parameters can be defined. As with any other class, the signature of the positional parameters must match the signature of a constructor in the attribute class: public class QualityCheckAttribute : Attribute {  public QualityCheckAttribute(string Name, string Date) // ... }

Named Parameters
Named parameters for an attribute are defined by public properties defined in the class. Named parameters are optional and are declared after any positional parameters. The <tt>IsApproved</tt> property demonstrates a named parameter: public class QualityCheckAttribute : Attribute {  private string _name; private string _date; private bool isApproved; public bool IsApproved {    get {return isApproved;} set {isApproved = value;} }   public QualityCheckAttribute(string Name, string Date) {    // ...    } }

Keep in mind that a variable in your code can be both a positional parameter and a named parameter. If we were to add public properties for the  and   fields we could use them either as named parameters or positional parameters. Of course, this is not a recommended practice: required parameters should be positional and optional parameters should be named.

Assigning An Attribute To A Code Member
You have already seen examples of assigning an attribute to a code member. However, there are some points that must be clarified.
 * Disambiguation is the clarification of the use of an attribute on a code member.
 * Syntax - there is more than one way to apply multiple attributes.

Disambiguation
The code below isn't clear as to whether <tt>SomeAttribute</tt> applies to the method <tt>MyMethod</tt> or to its <tt>return</tt> value: public class MyAttribute : Attribute {  [SomeAttribute("Hello")] public string MyMethod(aString) {    return aString; } } Disambiguation resolves these issues. By specifying the code type the attribute is applied to, we are able to resolve the confusion. The code below shows that the attribute applies to the <tt>return</tt> value: public class MyAttribute : Attribute {  [ return : SomeAttribute] public string MyMethod(aString) {    return aString; } } The table below lists all declarations where attributes are allowed; for each declaration, the possible targets for attributes on the declaration are listed in the second column. Targets in bold are the defaults. Declaration              Possible targets assembly                 assembly module                   module class                    type struct                   type interface                type enum                     type delegate                 type, return method                   method, return parameter                param field                    field property — indexer       property property — get accessor  method, return property — set accessor  method, param, return event — field            event, field, method event — property         event, property event — add              method, param event — remove           method, param *Reference: Disambiguating Attribute Targets (C# Programming Guide) One would think that the <tt>AttributeUsageAttribute's AttributeTargets</tt> in an attribute's definition would help to prevent this confusion: one would be wrong. The compiler does not use the <tt>AttributeUsageAttribute</tt> information when resolving conflicts. Even if you define an attribute to apply only to a specific type, for instance <tt>AttributeTargets.Return</tt>, you must still clarify that it applies to the <tt>return</tt> type when applying the attribute or the compiler will use the default target <tt>method</tt> type, and throw an error.

Syntax: Applying Multiple Attributes
When applying more than one attribute to a member, there are two ways to do so: [AttrOne(...), AttrTwo(...)] // or... [AttrOne(...)] [AttrTwo(...)] The two are equivalent. Keep in mind that if you are going to specify more than one attribute in a single brace, they must apply to the same target type. If not, you must give each type a separate declaration: [return : AttrOne(...), method : AttrTwo(...)] // <-- invalid! // instead, you must... [return : AttrOne(...)] [method : AttrTwo(...)]

Retrieving Attribute Information At Runtime
Being able to declare and apply attributes is not very helpful unless we can retrieve that data and do something with it. Fortunately, its a straightforward process. There are three basic scenarios that will be addressed:
 * 1) Retrieve a single attribute from a member.
 * 2) Retrieve multiple attributes from a member.
 * 3) Retrieve attributes of a single type from multiple members.

Retrieving A Single Attribute From A Member
To access attribute information: The example code below declares a class <tt>ExampleClass</tt> with a <tt>QualityCheck</tt> attribute. The <tt>GetSingleAttribute</tt> method accepts a target member type and the type of attribute you're looking for. The <tt>Attribute.GetCustomAttribute</tt> method retrieves the attribute information into the <tt>attr</tt> object, from which we can read the all-important <tt>IsApproved</tt> property: [QualityCheck("Scott Baker", "02/04/2006", IsApproved = false)] public class ExampleClass {  public static void Main {    GetSingleAttribute(typeof(ExampleClass), typeof(QualityCheck)) }  public static void GetSingleAttribute(Type targetType, Type attrType) {    typeof(attrType) attr = (attrType)Attribute. GetCustomAttribute (targetType, typeof(attrType)); if (attr == null) { //... }    else {      Console.Writeline(attr.IsApproved); }  }
 * 1) Declare an instance of the attribute type.
 * 2) Use the <tt>Attribute.GetCustomAttribute(type, typeof)</tt> method to read the attribute into the instance.
 * 3) Use the properties of the instance to read the values.

An important factor to keep in mind is that the <tt>GetCustomAttribute</tt> method is designed to read one and only one attribute. <tt>GetCustomAttribute</tt> actually checks to see if more than one attribute matches - if there is no match it returns <tt>null</tt>, but if there is more than one match it will throw an <tt>AmbiguousMatchException</tt>. When checking for attributes the only time it is safe to use <tt>GetCustomAttribute</tt> is when the attribute's definition states <tt>[AttributeUsage(AllowMultiple= false )]</tt>.

Retrieving Multiple Attributes From A Member
Reading multiple instances of an attribute on a member isn't much different than reading one; to read multiple attributes use the plural <tt>GetCustomAttributes</tt>, which returns an array of attributes. You can then iterate through the resultant array and read the values:

QualityCheck[] attrArray = (QualityCheck[])Attribute.GetCustomAttributes(t, typeof(QualityCheck)); foreach (QualityCheck attr in attrArray) {  Console.Writeline(attr.IsApproved); }

Retrieving A Single Attribute Type From Multiple Members
What if you want to do something a little more complex, like checking each method in a class for a QualityCheck attribute? Thanks to the <tt>System.Reflection</tt> namespace, we don't have to even break a sweat. Simply read all the members (methods, in this instance) into a <tt>MemberInfo</tt> array and iterate through them: using System.Reflection public class ExampleClass {  public static void Main {    RetrieveAttributes(typeof(ExampleClass)); }  public void RetrieveAttributes(Type t)   { MemberInfo[] methodList = t.GetMethods; foreach (MemberInfo m in methodList) {      QualityCheck[] attrArray = (QualityCheck[])Attribute.GetCustomAttributes(m, typeof(QualityCheck)); foreach (QualityCheck attr in attrArray) {        Console.Writeline(attr.IsApproved); }    }   } }

title: .NET Development Foundation/Attributes


text:
User talk:209.86.128.178

--Derbeth talk 10:41, 6 December 2005 (UTC)

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: User talk:209.86.128.178


text:
Category:Book:Movie Making Manual/Cinematography

 * /Cinematography/Large sensor digital film cameras
 * /Cinematography/Aspect ratios
 * /Cinematography/Green Screen


text:
Category:Book:Movie Making Manual/Cameras

This is the "cameras" section of the Cinematography chapter of the Movie Making Manual


text:
Category:Book:Movie Making Manual/Formats

This is the formats category of the Cinematography chapter of the Movie Making Manual


text:
Biblical Studies/Christianity/Famous works of fiction/Chronicles of Narnia

The Chronicles of Narnia is a series of seven fantasy novels for children written by C. S. Lewis. They present the adventures of children who play central roles in the unfolding history of the realm of Narnia, a place where some animals talk, magic is common, and good is fighting evil. The stories illustrate aspects of Christianity in a way that is accessible to younger children.

Pauline Baynes illustrated the original books in the series.


text:
Embedded Systems/Terminology

This page will try to discuss some of the different, important terminology, and it may even contain a listing of some of the acronyms used in this book.

Types of Chips
There are a number of different types of chips that we will discuss here.

 * Microprocessors: These chips contain a processing core, and occasionally a few integrated peripherals. In a different sense, Microprocessors are simply CPUs found in desktops.
 * Microcontrollers: These chips are all-in-one computer chips. They contain a processing core, memory, and integrated peripherals. In a broader sense, a microcontroller is a CPU that is used in an embedded system.
 * Digital Signal Processor (DSP): DSPs are the "best of the best" when it comes to processing signals. DSPs frequently run very quickly, and have immense processing power (for an embedded chip). Digital Signal Processors, and the field of Digital Signal Processing is so large and involved, that it warrants its own book -- Digital Signal Processing.

Grades of Microcontrollers
Microcontrollers can be divided up into different categories, depending on several parameters such as bus-width (8 bit, 16 bit, etc...), amount of memory, speed, and the number of I/O pins:

 * Low-end: Low-end chips are frequently used in simple situations, where speed and power are not a factor. Low-end chips are the cheapest of the bunch, and can usually cost less than a dollar, depending on the quantity in which they are purchased. Low-end chips rarely have many I/O pins (4 or 8, total), and rarely have any special capabilities. Almost all low-end chips are 8 bits or smaller.
 * Mid-level chips:mid-level chips are the "basic" microcontroller units. They don't suffer from the drawbacks of the low-end chips, but at the same time they are more expensive and larger. Mid-level chips are 8 bits or 16 bits wide, and frequently have a number of available I/O pins to play with. Mid-level chips may come with ADC, voltage regulators, OpAmps, etc... Mid-level chips can cost anywhere between $1 and $10 for reasonable chips.
 * High-end chips:High end chips are used in situations where power and speed are a must, but a conventional microprocessor board (think a computer motherboard) is too large or expensive. High-end chips will have a number of fancy features, more available memory, and a larger addressable memory range. High end chips can come in 8 bit, 16 bit, 32 bit or even 64 bit, and can cost anywhere between $10 and $100 each.

Acronyms
This will be a functional list of most of the acronyms used in this book

 * ADC: ADC stands for Analog to Digital Converter. ADCs are also written as "A/D" or "A2D" in other literature.
 * DAC: The exact opposite of an ADC, a DAC stands for Digital to Analog Converter. May also be called "D/A" or "D2A"
 * RAM: Random-Access Memory. RAM is a High Speed Volatile Memory.So the Data stored in RAM is lost on power off.
 * ROM: Read-Only Memory, ROM is memory that can be read, but it can't be written or erased. ROM is cheaper than RAM, and it doesn't lose its information when the power is turned off.
 * OTP: OTP means One-Time Programmable. OTP chips can be programmed once, and only once, usually by a physical process or burning extra wires inside the chip. If an OTP chip is programmed incorrectly, it can't be fixed, so be careful with them.

Downloading
In this book, the terms "burning", "flashing", "installing", or "downloading" all mean the same thing—the (semi-)automated process of putting the executable image into the non-volatile memory of the embedded system.

After a person tweaks the source code and compiles a new executable image on the PC, that person connects a downloader between the PC and the embedded system, and clicks the "go" button. Then the PC streams the image into the downloader, and the downloader burns the image into the embedded system.

A downloader is variously called a "downloader", "burner", "flasher", "flash downloader", "programming interface", or—confusingly—a "programmer".

 * Embedded Systems/PIC Microcontroller
 * Embedded Systems/Atmel AVR

Programming
There are many similarities between a desktop PC and an embedded system, including the terminology used. Unfortunately some terms have wildly different meanings when used in each of these domains. The word "programming" is one such term.

In the desktop PC world, "programming" means the overall process of a person writing software on a PC, going through many edit-compile-test cycles, to create an executable image. The person accomplishing this task is called the "programmer".

For embedded systems the word "programming" usually means the specific steps for transferring the executable image to the device ('installing' in PC terms). The "programmer" is a device for burning the compiled code into the chip. The person that writes the code for the device is generally called the developer.

In this book, we use the term "programming" to describe what a human being does to create and test software source code.

Be aware that other texts may use the term "programming"—such as when talking about "high-voltage programming", "gang programming", etc. -- to describe what we would call "installing".

Texts that talk about "C++ programming", "assembly programming", "pair programming" etc. -- use "programming" the same way we do. "C++ programmer", "Python programmer", "pair programmer", etc. refer to human beings that do the programming.

title: Embedded Systems/Terminology


text:
Category:Book:Movie Making Manual/Pre-production

Movie pre-production: everything that happens between developing the movie and production


text:
User:Whiteknight/Digital Media Processing

I am scheduled to take a number of classes in this subject, the earliest of which may happen next semester (first half 2007), or next fall. I will push this book back to coincide with my taking those classes. --Whiteknight (talk) (projects) 17:48, 10 October 2006 (UTC)

Introduction
This book is going to talk about the specific theory involved in manipulating different digital data types. This book will focus on algorithms for manipulating digital video, digital audio, and digitial images.

Section 1: Image Processing Basics

 * 2-dimensional Fourier Transform
 * 2D Wavelet Transform
 * Discrete Cosine Transform
 * Other Transforms
 * Grayscale Images
 * Color Images (RGB, etc)

Section 2: Image Processing Algorithms

 * Edge Detection
 * Blurring
 * Sharpening
 * image stitching
 * morphological image processing using mathematical morphology
 * Image Compression

Section 3: Audio Processing Basics

 * Fourier Transform
 * Wavelet Transform
 * Other Transforms
 * Audio Processing
 * Audio Compression
 * Filtering

Section 4: Video Processing Basics

 * Video Processing
 * linear editing
 * nonlinear editing
 * bluescreens, greenscreens, and compositing
 * motion detection
 * motion compensation
 * Video Compression

Section 5: Data Compression

 * Run-Length Encoding/Variable-Length Encoding
 * Lossless/Lossy Compression
 * Compression Techniques
 * Image Compression (JPEG, PNG, GIF)
 * Sound Compression (MP3, OGG)
 * File Compression (ZIP, LZW)
 * Video compression (MPEG-4, Theora)

Appendix

 * Implementing the Fourier transform: the FFT
 * fingerprint identification
 * voice identification
 * speech synthesis
 * speech recognition
 * image synthesis

Existing Pages
Digital Media Processing =Image Processing Basics =Image Processing Algorithms =Audio Processing Basics =Video Processing Basics =Data Compression =Appendix
 * Grayscale Images
 * Color Images
 * 2-dimensional Fourier Transform
 * 2D Wavelet Transform
 * Discrete Cosine Transform
 * Other Transforms
 * Edge Detection
 * Blurring
 * Sharpening
 * Image Stitching
 * Morphological Image Processing
 * Homomorphic Filtering
 * Image Compression
 * Fourier Transform
 * Wavelet Transform
 * Other Transforms
 * Audio Processing
 * Audio Compression
 * Filtering
 * Video Processing
 * Linear Editing
 * Nonlinear Editing
 * Bluescreens, Greenscreens, and Compositing
 * Motion Detection
 * Motion Compensation
 * Video Compression
 * Run-Length Encoding
 * Variable-Length Encoding
 * Lossless/Lossy Compression
 * Compression Techniques
 * Image Compression
 * Sound Compression
 * File Compression
 * Video compression
 * The Fast Fourier Transform
 * Fingerprint Identification
 * Voice Identification
 * Speech Synthesis
 * Speech Recognition
 * Image Synthesis


text:
Introduction to Psychology/Personality

Psychodynamic Theories
Sigmund Freud’s psychoanalytic theory of personality argues that human behavior is the result of the interactions among three component parts of the mind: the id, ego, and superego. This theory, known as Freud’s structural theory of personality, places great emphasis on the role of unconscious psychological conflicts in shaping behavior and personality. Dynamic interactions among these fundamental parts of the mind are thought to progress through five distinct psychosexual stages of development. Over the last century, however, Freud’s ideas have since been met with criticism, in part because of his singular focus on sexuality as the main driver of human personality development.

Humanistic Personality Theories
According the Humanistic Psychologist Carl Rogers, the personality is composed of the Real Self and the Ideal Self. Your Real Self is who you actually are, while your Ideal Self is the person you want to be.

The Ideal Self is an idealized version of yourself created out of what you have learned from your life experiences, the demands of society, and what you admire in your role models.

For example, your parents are medical doctors who are respected and admired in the community, and experience tells you that in order to be happy, you need to be smart and have a high-paying job. Your Ideal Self might be someone who excels in science subjects, spends a lot of time studying, and does not get queasy at the sight of blood. If your Real Self is far from this idealized image, then you might feel dissatisfied with your life and consider yourself a failure.

Trait Theories
Trait theories of personality are models developed with factor analysis that describe a personality on independent scales. The current leading trait theory is that of the big five personality traits and the development of the big five personality test.

Cognitive-Social Learning Theories
Social cognitive theory is the view that people learn by watching others. In psychology, it explains personality in terms of how a person thinks about and responds to one's social environment. For example, in the 1960s Albert Bandura (a pioneer in social cognitive theory) argued that when people see someone else awarded for behavior, they tend to behave the same way to attain an award. People are also more likely to imitate those with whom they identify. Bandura famously illustrated social learning by showing children a video of a girl punching a doll; presented later with a doll, the children behaved in similarly aggressive ways. Not all learning is acted upon; for example, one might learn to hunt by observing others yet never actually hunt.

Personality Assessment
Psychological Assessment refers to any type of standardized, mental testing or behavioral evaluation. Assessments are used to measure intelligence, development, personality, attitudes, and cognitive, social, or emotional functioning, and are also used by clinicians to diagnosis disorders. Psychological assessments may take the form of a questionnaire, an interview, or observational methods. The Wechsler Adult Intelligence Scale, the Beck Depression Inventory, and the Neonatal Behavioral Assessment Scale are all examples of psychological assessments.

Back to Table of Contents << Previous chapter||Next chapter >>

title: Introduction to Psychology/Personality


text:
Talk:Linguistics/Affixes

That "frickin" section must be a joke, right?

I'm guessing the answer would be "kind of." The queen's English doesn't have an infix, but I have seen that in US vernacular (see the article on expletive infixation; linguistics is concerned with descriptive grammar as well as prescriptive grammar). Other languages do have it in their prescriptive form; Tagalog is commonly cited as an example (see this SIL site).--RMann 22:18, 5 January 2007 (UTC)

Merger
I think this page should be merged into the morphology chapter. It really only has enough content for a paragraph. Mo-Al (talk) 23:06, 4 August 2009 (UTC)

title: Talk:Linguistics/Affixes


text:
PHP vs ColdFusion

Contents

 * 1) /Introduction/
 * 2) Coding Examples
 * 3) /Hello World/
 * 4) /Inserting Variables/
 * 5) /IF Statements/
 * 6) Picking the Right Editor

About the authors

 * da404LewZer: New editor. Started this as a side project to better myself.
 * PakBehl: New editor. Here to provide ColdFusion information.

title: PHP vs ColdFusion


text:
User:Da404lewzer~enwikibooks

Hello all, I am a 22 year old Web Designer, I don't have much to say about myself, but i'm sure I will later.

 * da404lewzer's blog
 * php4fun blog
 * da404lewzer's youtube
 * da404lewzer's myspace
 * da404lewzer's orkut
 * da404lewzer's wordpress
 * da404lewzer's LiveJournal

title: User:Da404lewzer~enwikibooks


text:
User talk:Da404lewzer~enwikibooks

Hello and welcome to Wikibooks!

Here are some tips to help you get started:
 * You can sign your name on Talk and vote pages using four tildes, like this: ~~~~.
 * Remember to conduct any editing experiments in the sandbox.
 * Check out our help page if you need additional help.
 * Eventually, you might want to read the Manual of Style and Policies and Guidelines.
 * Templates can save your time
 * Remember to maintain a Neutral point of view.
 * Explore, be bold in editing pages, and have fun!

You will find more resources in Community Portal. If you want to ask a question, visit the Study help desk, the Staff lounge, or ask me personally on my talk page.

Good luck! -- LV (Dark Mark) 17:23, 6 December 2005 (UTC)

Your account will be renamed
Hello,

The developer team at Wikimedia is making some changes to how accounts work, as part of our on-going efforts to provide new and better tools for our users like cross-wiki notifications. These changes will mean you have the same account name everywhere. This will let us give you new features that will help you edit and discuss better, and allow more flexible user permissions for tools. One of the side-effects of this is that user accounts will now have to be unique across all 900 Wikimedia wikis. See the announcement for more information.

Unfortunately, your account clashes with another account also called Da404lewzer. To make sure that both of you can use all Wikimedia projects in future, we have reserved the name Da404lewzer~enwikibooks that only you will have. If you like it, you don't have to do anything. If you do not like it, you can pick out a different name.

Your account will still work as before, and you will be credited for all your edits made so far, but you will have to use the new account name when you log in.

Sorry for the inconvenience.

Yours, Keegan Peterzell Community Liaison, Wikimedia Foundation 23:07, 17 March 2015 (UTC)

Renamed
 This account has been renamed as part of single-user login finalisation. If you own this account you can |log in using your previous username and password for more information. If you do not like this account's new name, you can choose your own using this form after logging in: . -- Keegan (WMF) (talk) 04:50, 19 April 2015 (UTC)

title: User talk:Da404lewzer~enwikibooks


text:
PHP vs ColdFusion/Hello World

Hello World was seen as early as 1974 in Bell Laboratorie's internal memorandum by Kernighan —Programming in C: A Tutorial— which shows the first known version of the program: main { printf("Hello, world!"); }

In this tutorial we will use one variable named message to display a string of text.

Putting it Together
These files should always be created using a program that doesn't include formating, and saves to a non-rich text format such as notepad.exe (Win32), Pico (Command line), Kedit (KDE), or Gedit (GNOME).

PHP: Test

ColdFusion: Test

 #message#

Line Breakdown
This is a very simple example because they both do the same thing, in the same amount of code. Not too hard so far eh? Lets see what actually makes them tick...

PHP: 07

Line#07  Ends php

ColdFusion: 07 08    09  #message# 10

Line#07  Starts the ability to output to the browser Line#08 <cfset Stores #message# with the value Hello World! Line#09 #message# Dumps the value Hello World! Line#10  End the ability to output to the browser

What the Browser Sees
Either way, these two scripts produce the same exact page, the only thing different are the server headers. Test

Hello World!

Displayed in Browser
Hello World!

title: PHP vs ColdFusion/Hello World


text:
PHP vs ColdFusion/Inserting Variables

Inserting Variables
Both languages allow you to insert variables at any point. This is very useful if you have many lines of HTML, but only need to insert something simple. We will use the variable we created above.

PHP: Message holds: <?=$message; ?> (Note: This will not work in php if short open tags are disabled. This was enabled by default as of php 4.0.0)

ColdFusion: Message holds: #message# (Note: It is considered poor form in CFML to place tags at the beginning and end of a page, as the parser must evaluate every word for variables).

Both examples will print: Message holds: Hello World!

title: PHP vs ColdFusion/Inserting Variables


text:
PHP vs ColdFusion/Introduction

When it comes to web design, many languages exist to create the structure for web-based applications. We will be comparing the languages PHP and ColdFusion.

PHP and ColdFusion are both created to help design web pages scripted in HTML. Alone, HTML cannot create dynamic content, connect to databases to perform queries, manipulate files or handle form data. This is where PHP and ColdFusion come in. The code between these languages may be completely different, however both have thousands of different functions that let you do everything from data encryption to image editing. We will be showing code examples between the two.

title: PHP vs ColdFusion/Introduction


text:
User talk:80.179.199.140

Welcome to Wikibooks, collection of open-content textbooks! You don't have to log in to read or edit articles on Wikibooks, but creating an account is quick, free and non-intrusive, requires no personal information, and gives you many benefits, including:
 * The use of a username of your choice
 * The ability to view all your contributions via a "My contributions" link
 * Your own user page
 * Your own talk page which, if you choose, also allows users to send you messages without knowing your e-mail address
 * The use of your own personal watchlist to which you can add articles that interest you
 * The ability to rename pages
 * The ability to upload images
 * The ability to customize the appearance and behavior of the website
 * The eligibility to become an administrator
 * The right to be heard in votes and elections
 * Your IP address will no longer be visible to other users.

We hope that you choose to become a Wikibooks and create an account. We hope you enjoy your time here on Wikibooks as a Wikibookian! -- LV (Dark Mark) 18:22, 6 December 2005 (UTC)

title: User talk:80.179.199.140


text:
Rhetoric and Composition/Mechanics

What is Mechanics?
The word "mechanics" refers primarily to spelling and punctuation; in short, aspects of writing that are not shared by speaking. When and where should you use a comma? What are the rules for semicolons? Questions like this..

 * Punctuation

Periods, colons, semi-colons, commas, question marks, apostrophes, hyphens, parentheses, brackets, and dashes.

title: Rhetoric and Composition/Mechanics


text:
LaTeX/Text Formatting

This section will guide you through text-formatting techniques. Formatting refers to most things to do with appearance including text style and spacing. Formatting may also refer to paragraph and page layout, here we will focus on the customization of words and sentences.

Writers use formatting techniques to differentiate textual elements from the rest of the text. The many ways in which writers wish to differentiate textual elements give rise to many formatting techniques. Italicization is often used to add emphasis to key words or phrases. Footnotes are useful for providing extra information or clarification without interrupting the main flow of the text. For these reasons, formatting is very important. However, it is also very easy to abuse, and a document that has been overdone can look and read worse than one with none at all.

LaTeX is so flexible that we will actually only skim the surface, as you can have much more control over the presentation of your document if you wish. Having said that, one of the purposes of LaTeX is to take away the stress of having to deal with the physical presentation yourself, so you need not get too carried away!

Line Spacing
If you want to use larger inter-line spacing in a document, you can change its value by putting the

command into the preamble of your document. Use for "one and a half" line spacing, and  for "double" line spacing. Normally the lines are not spread, so the default line spread factor is 1. This may not be ideal in all situations: see http://tex.stackexchange.com/questions/30073/why-is-the-linespread-factor-as-it-is.

The package allows more fine-grained control over line spacing. To set "one and a half" line spacing document-wide, but not where it is usually unnecessary (e.g. footnotes, captions):

To change line spacing within the document, the setspace package provides the environments singlespace, onehalfspace, doublespace and spacing:

Non-breaking spaces
This essential feature is a bit unknown to newcomers, although it is available on most WYSIWYG document processors. A non-breaking space between two tokens (e.g. words, punctuation marks) prevents the processors from inserting a line break between them. Additionally, a non-breaking space cannot be enlarged. It is very important for a consistent reading.

LaTeX uses the '~' symbol as a non-breaking space. You would usually use non-breaking spaces for punctuation marks in some languages, for units and currencies, for initials, etc. In French typography, you would put a non-breaking space before all two-parts punctuation marks.

Examples:

Sentence-spacing -- space between words and sentences
To get a straight right margin in the output, LaTeX inserts varying amounts of space between the words. By default, it follows traditional typesetting practice and inserts more space at the end of a sentence to assist the reader: an em-space rather than a word-space. This can be approximated on a typewriter or computer keyboard by pressing the space bar twice rather than once. After the invention of the typewriter, English practice was to press the spacebar twice between sentences (but not around various other punctuation), while French practice was to press the spacebar once (but then also again around various other punctuation).

The extra space added at the end of sentences is latterly considered typographically old-fashioned in current mass-market English language printing. The practice was discovered in the fifteenth century to be preferred by readers and remained the standard throughout the fifteenth to twentieth centuries. Typesetting technology changes around WWII encouraged mass-market publishers to increasingly use single spacing for cost/profit reasons, and in the late 1980s the then-innovative Macintosh DTP technology created a suddenly wide platform for the University of Chicago Press to reintroduce and evangelize William Morris's failed nineteenth century attempt to popularize the rejected early fifteenth century's close-set type as a Norm, but this time to people without industry or market knowledge. "French Spacing" was redefined at this time in the USA (only) as a pejorative term to describe its opposite: to mean em-spacing between sentences rather than word-spacing. LaTeX users should note that Donald Knuth created TeX specifically to correct what he described as the ugliness and unreadability of then-(70s, pre-MacintoshDTP)-machine-typesetting, that he later added the FrenchSpacing option not as default but as a lengthily-specified option, i.e. that original TeX assumed the user wanted reader-centric typesetting (em-spacing sentences not word-spacing), and that Donald Knuth explicitly coded the FrenchSpacing option to implement precisely the opposite of what current post-University-of-Chicago typographers declare it to mean despite him being "otherwise" regarded as extremely intelligent and extremely well informed.) Most modern typesetters treat the end of sentence space the same as the interword space. (See for example, Bringhurst's Elements of Typographic Style.)

The additional space after periods can be disabled with the command

which tells LaTeX not to insert more space after a period than after ordinary character. Frenchspacing can be turned off later in your document via the command.

If an author wishes to use the wider end-of-sentence spacing, care must be exercised so that punctuation marks are not misinterpreted as ends of sentences. TeX assumes that sentences end with periods, question marks or exclamation marks. Although if a period follows an uppercase letter, this is not taken as a sentence ending, since periods after uppercase letters normally occur in abbreviations. Any exception from these assumptions has to be specified by the author. A backslash before a space generates a space that will not be enlarged. A tilde ‘’ character generates a non-breaking space. The command before a period specifies that this period terminates a sentence even when it follows an uppercase letter. (If you are using, then none of these exceptions need be specified.)

Stretched spaces
You can insert a horizontal stretched space with in a line so that the rest gets "pushed" toward the right margin. For instance this may be useful in the header.

Similarly you can insert vertical stretched space with. It may be useful for special pages.

See Lengths for more details.

Manual spacing
The spaces between words and sentences, between paragraphs, sections, subsections, etc. is determined automatically by LaTeX. It is against LaTeX philosophy to insert spaces manually and will usually lead to bad formatting. Manual spacing is a matter of macro writing and package creation.

See Lengths for more details.

Hyphenation
LaTeX hyphenates words whenever necessary. Hyphenation rules will vary for different languages. LaTeX supports only English by default, so if you want to have correct hyphenation rules for your desired language, see Internationalization.

If the hyphenation algorithm does not find the correct hyphenation points, you can remedy the situation by using the following commands to tell TeX about the exception. The command

causes the words listed in the argument (separated by blanks) to be hyphenated only at the points marked by “-”. The argument of the command should only contain words built from normal letters, or rather characters that are considered to be normal letters by LaTeX. It is known that the hyphenation algorithm does not find all correct American English hyphenation points for several words. A log of known exceptions is published periodically in the TUGboat journal. (2012 list: https://www.tug.org/TUGboat/tb33-1/tb103hyf.pdf).

The hyphenation hints are stored for the language that is active when the hyphenation command occurs. This means that if you place a hyphenation command into the preamble of your document it will influence the English language hyphenation. If you place the command after the and you are using some package for national language support like babel, then the hyphenation hints will be active in the language activated through babel. The example below will allow “hyphenation” to be hyphenated as well as “Hyphenation”, and it prevents “FORTRAN”, “Fortran” and “fortran” from being hyphenated at all. No special characters or symbols are allowed in the argument. Example:

With babel, the recommended command to set hyphenation exceptions is. When LuaTeX is used, babel also allows to add new patterns and modify existing ones (with ), as well as to define non-standard rules (like ‘ff’ to ‘ff-f’ in some languages, or ranked hyphenation) to be applied without explicit mark-up (with ).

The command inserts a discretionary hyphen into a word. This also becomes the only point where hyphenation is allowed in this word. This command is especially useful for words containing special characters (e.g., accented characters), because LaTeX does not automatically hyphenate words containing special characters.

LaTeX does not hyphenate compound words that contain a dash. There are two packages that can add back flexibility. The package supplies the  command. This command typesets the dash and then subjects the constituent words to automatic hyphenation. After loading the package:

one should write, instead of electromagnetic-endioscopy:

The package also offers features for controlling the hyphenation of compound words containing dashes — as opposed to the words themselves which it leaves to LaTeX. The option enables a more compressed syntax:

Typical usage is as follows, assuming the compressed syntax. In both cases, LaTeX can break and hyphenate the constituent words, but in the latter case, it will not break after the L:

One or more words can be kept together on the one line with the standard LaTeX command:

This prevents hyphenation and causes its argument to be kept together under all circumstances. For example:

is similar to, but in addition there will be a visible box drawn around the content.

To avoid hyphenation altogether, the penalty for hyphenation can be set to an extreme value:

You can change the degree to which LaTeX will hyphenate by changing the value of and. You'll have to experiment with the values to achieve the desired effect. A document which has a low tolerance value will cause LaTeX not to tolerate uneven spacing between words, hyphenating words more frequently than in documents with higher tolerances. Also note that using a higher text width will decrease the probability of encountering badly hyphenated word. For example adding

will widen the text width and reduce the amount of margin overruns.

Quote-marks
LaTeX treats left and right quotes as different entities. For single quotes, a grave accent, ` (on American keyboards, this symbol is found on the tilde key; adjacent to the number 1 key on most keyboards) gives a left quote mark, and an apostrophe, ' gives a right. For double quotes, simply double the symbols, and LaTeX will interpret them accordingly. (Don't use the " for right double quotes: when the <tt>babel</tt> package is used for some languages (e.g. German), the <tt>"</tt> is redefined to produce an umlaut accent; using <tt>"</tt> for right double quotes will either lead to bad spacing or it being used to produce an umlaut). On British keyboards, ' <tt>`</tt> ' is left of the ' 1 ' key and shares the key with ' ¬ ', and sometimes ' ¦ ' or ' | '. The apostrophe (') key is to the right of the colon/semicolon key and shares it with the ' @ ' symbol.

The right quote is also used for apostrophe in LaTeX without trouble.

For left bottom quote and European quoting style you need to use T1 font encoding enabled by:

See Fonts for more details on font encoding.

The package offers a multilingual solution to quotations, with integration to citation mechanisms offered by BibTeX. This package allows one for example to switch languages and quotation styles according to babel language selections.

Diacritics and accents
Most accents and diacritics may be inserted with direct keyboard input by configuring the preamble properly. For symbols unavailable on your keyboard, diacritics may be added to letters by placing special escaped metacharacters before the letter that requires the diacritic.

See Special Characters.

Margin misalignment
Some very long words, numbers or URLs may not be hyphenated properly and move far beyond the side margin. One solution for this problem is to use environment, which tells LaTeX to adjust word spacing less strictly. As a result, some spaces between words may be a bit too large, but long words will be placed properly.

Another solution is to edit the text to avoid long words, numbers or URLs approaching the side margin.

Ligatures
Some letter combinations are typeset not just by setting the different letters one after the other, but by actually using special symbols (like "ﬀ"), called. Ligatures can be prohibited by inserting or, if this does not work,  between the two letters in question. This might be necessary with words built from two words. A classic example is shelfful:

If you are using LuaLaTeX, you can automate some of this work with the package.

Slash marks
When the slash character is immediately preceded and/or followed by text without intervening white space, LaTeX does not allow a line break to occur between the slash and adjacent text. This behaviour was implemented because historically most occurrences of the slash within text were situations where the convention was to keep the surrounding text together on one line. Examples include
 * Dates, such as "".
 * Abbreviations of units, such as "".

Dates and unit abbreviations are relatively short, so the constraint that they must be kept together on a single line does not cause issues. However, the character can also occur in longer expressions which might create "overfull" errors in output, causing text to overflow a margin. In these situations the character should be replaced by "", which allows the line to "break" after the slash mark if needed. Examples include
 * Words separated by slashes, such as "input/output" which should be typeset as "", or Yes/No/Cancel. (Shorter examples like and/or could be safely left as not allowing a line break.)
 * Directory names in operating systems that use the slash as a separator, such as /home/texlion/Documents, which should be typeset as "". Note that the first of the 3 slashes is NOT replaced.

A word after or  is not automatically hyphenated. This is a similar problem to non-hyphenation of words with a dash described under Hyphenation. One way to have both a line break and automatic hyphenation in both words is

Both and  can be used with a zero  like this. includes a penalty to make a line break there less desirable. This combination can be made into a new slash macro if desired. The package includes an  which will add a hyphen after the slash like "input/- output" if the line breaks there.

Fonts
To change the font family, emphasize text, and other font-related issues, see Fonts.

Formatting macros
Even if you can easily change the output of your fonts using those commands, you're better off not using explicit commands like this, because they work in opposition to the basic idea of LaTeX, which is to separate the logical and visual markup of your document. This means that if you use the same font changing command in several places in order to typeset a special kind of information, you should use to define a "logical wrapper command" for the font changing command.

This approach has the advantage that you can decide at some later stage that you want to use some visual representation of danger other than, without having to wade through your document, identifying all the occurrences of and then figuring out for each one whether it was used for pointing out danger or for some other reason.

See Macros for more details.

Text mode superscript and subscript
Sub and superscripting can be done quite easily using and.

Note: A LaTeX version from 2015 or later, or the package fixltx2e, is needed to use text-mode subscripts in all contexts.

Text figures ("old style" numerals)
Many typographers prefer to use titling figures, sometimes called lining figures, when numerals are interspersed with full caps, when they appear in tables, and when they appear in equations, using text figures elsewhere. LaTeX allows this usage through the command:

Some fonts do not have text figures built in; the package attempts to remedy this by effectively generating text figures from the currently-selected font. Put in your preamble. also allows you to use decimal points, properly formatted dollar signs, etc. within.

One common use for text figures is in section, paragraph, and page numbers. These can be set to use text figures by placing some code in your preamble:

Should you use additional sectioning or paragraphing commands, you may adapt the previous code listing to include them as well.

A subsequent use of the command, e.g.,, will reset the  command back to the original. Thus, if you use the command in your document, be sure to reinstate your  from the code above:
 * Note

{{LaTeX/Usage|code= ... \tableofcontents \pagenumbering{roman} \chapter{Preface} ... \chapter{Introduction} ... \pagenumbering{arabic} % without this, the \thepage command will not be in oldstyle (e.g., in your Table of Contents} \renewcommand{\thepage}{ \oldstylenums{\myThePage} } \Chapter{Foo} ... }}

Dashes and hyphens
LaTeX knows four kinds of dashes: a hyphen (-), en dash (–), em dash (—), or a minus sign (−). You can access three of them with different numbers of consecutive dashes. The fourth sign is actually not a dash at all—it is the mathematical minus sign:

The names for these dashes are: ‘-’(-) hyphen, ‘--’(–) en-dash , ‘---’(—) em-dash and ‘$$-$$’(−) minus sign. They have different purposes:

Use macro from  package instead of hyphen if you want LaTeX to break compound words between lines.

The commands and  are also used to produce en-dash (–), and em-dash (—), respectively.

Ellipsis (…)
A sequence of three dots is known as an , which is commonly used to indicate omitted text. On a typewriter, a comma or a period takes the same amount of space as any other letter. In book printing, these characters occupy only a little space and are set very close to the preceding letter. Therefore, you cannot enter ‘ellipsis’ by just typing three dots, as the spacing would be wrong. Instead, there is a special command for these dots. It is called :

Alternatively, you can use the command which allows the spacing between the dots to vary.

Ready-made strings
There are some very simple LaTeX commands for typesetting special text strings:

Notes and References
LaTeX/Форматирование текста LateX/Форматирање текста

title: LaTeX/Text Formatting


text:
Georgia Water/External Links/Data

Databases

 * Surface Water Withdrawal Permits for municipal and industrial users, by Georgia DNR Environmental Protection Division, September 2005.
 * Water Resources Database "WRDB was originally developed by the Georgia Environmental Protection Division (EPD) in association with EPA Region 4 to address the imposing data management challenges presented by the Chattahoochee River Modeling Project. Since its inception, WRDB has been enhanced a number of times and applied to numerous projects in Region 4."

 * Coastal Plain water resources data from UGA-NESPAL in Tifton
 * Irrigation data
 * Permit data
 * Rainfall history

Online Maps and GIS Data

 * GIS Digital Datasets in Georgia in support of river basin management planning
 * Georgia Spatial Data Infrastructure, GIS Clearinghouse
 * GIS data for Georgia, by U.S. Geological Survey
 * Georgia Department of Community Affairs has sets of downloadable maps to help local planners prepare the community Comprehensive Plans required by DCA for every town in Georgia. The types of DCA's downloadable maps include:  boundaries, community facilities, transportation, hydrography, protected natural resources.  The DCA lists specifications for community maps to be included in the community Comprehensive Plans (so good idea to check your community's Comprehensive Plan to find updated local maps.   Also see:  www.GeorgiaPlanning.com

title: Georgia Water/External Links/Data


text:
User talk:Robin Patterson

RfA
Were you trying to become an Admin on the Maori Wikibooks or English Wikibooks? -- LV (Dark Mark) 19:33, 6 December 2005 (UTC)

title: User talk:Robin Patterson


text: Template:Japanese/Janav

title: Template:Japanese/Janav


text:
Talk:Mixing and Mastering

Great. Please tell me what are you going to write from the table and I will help with the others Sturmfuhrer

title: Talk:Mixing and Mastering


text:
Georgia Water/Statewide Plan/Timeline

 * October 20, 2003 - Governor Sonny Perdue issued an Executive Order creating the Georgia Water Resources Council
 * January 2004 - Georgia Water Resources Council submits recommendations to Georgia General Assembly.
 * May 13, 2004 - Comprehensive State-wide Water Management Planning Act signed signed by Governor Sonny Perdue

 * Mar. 02, 2005 - Georgia Water Council first meeting, DNR board room . . (summary)
 * June 07, 2005 - Georgia Water Council second meeting, ARC Center, Atlanta . . (summary) ..
 * (Couch - the Planning Process). . . (Kundell presentation)

 * Oct. 12, 2005 - Meeting of Water Conservation TAC in Atlanta, GA (agenda)
 * Oct. 17, 2005 - Georgia Water Council meeting, ARC Center, Atlanta . . (agenda) ..
 * (Couch - Coastal Georgia Sound Science Initiative)
 * Nov. 15, 2005 - Meeting of Water Conservation TAC in Tifton, GA

 * Dec. 01, 2005 - Georgia Water Council meeting in DCA Board Room, Atlanta . . (agenda)
 * July 01, 2007 - Due date for Georgia EPD to present the first statewide plan to the Georgia Water Council

title: Georgia Water/Statewide Plan/Timeline


text:
User talk:4.22.151.195

This is your last warning. The next time you vandalize a page you will be blocked from editing Wikibooks.

title: User talk:4.22.151.195


text:
A-level Physics/Forces, Fields and Energy/The nuclear atom

Up until the 19th century, atoms were once thought to be the smallest building blocks of matter, and that matter could not be broken down any further. We now know that atoms are made up of smaller, sub-atomic, particles. This has also helped us to understand the nuclear processes such as fission and fusion.

Structure of the atom
Near the end of the 19th century, it was widely accepted that the atom was neutral as a whole, and had areas of concentrated negative lumps within a larger positive structure. This model of the atom was called the plum pudding model, where the pudding was positive, and the plums were the negative electrons. This is also called the chocolate chip cookie model.

Discovery of the nucleus
In 1906, Ernest Rutherford was investigating the passage of α particles through gold foil. What he found was that most of the α particles passed straight through the foil, and there was some that were deflected by an angle of greater than 90°. It was known that α particles were smaller than atoms and had a positive charge, and from this Rutherford concluded that the atom is mostly empty space and has a positively charged nucleus at the center, which was repelling the α particles. This experiment disproved the plum pudding model, and the new nuclear model was now the widely accepted model. He also calculated that the nucleus had a diameter of around $$10^{-14} m$$.

Later, the negative "lumps" that originally led to the plum pudding model were found to actually be electrons orbiting the nucleus with a relatively large radius of about $$10^{-10} m$$, also confirming that an atom is mostly empty space.

Discovery of the proton
The next step was to find out what the nucleus was made up of. The proton was discovered, again by Rutherford, in 1919. To find the protons, he placed a source of α radiation inside a cylinder of nitrogen gas. The cylinder had an opening at one end, which was covered by a sheet of aluminium foil. A screen was placed outside the opening, and flashes of light were observed on the screen. The flashes of light were caused by particles hitting the screen, but since it was known that aluminium foil prevents α particles from passing through, another, smaller, particle must have been hitting the screen. Rutherford asked two of his research students, Geiger and Marsden, to take measurements of the deflection angles of the particles, and he found by calculations that the proton was smaller than most nuclei, and had a positive charge which was the same magnitude of an electron. The distribution of the deflected alpha particles is different for different forces (for example, magnetic, hard sphere etc.). Rutherford was able to be sure that the nucleus was positively charged.

Discovery of the neutron
In 1932, James Chadwick discovered a particle that was slightly greater in mass than the proton and had no electric charge, which he called the neutron. He used α radiation from polonium, and directed it towards some beryllium. The beryllium emitted neutrons when it was bombarded with the α radiation, but since they have no charge, they were hard to detect. Chadwick placed some paraffin wax in the path of the neutrons, and the paraffin wax emitted high energy protons (paraffin wax contains a large amount of hydrogen). This showed that there were particles hitting the atoms of the paraffin wax without being slowed down by the positively charged nucleus of the atoms, and that they collide elastically with atoms.

Evidence of crystal structure
A beam of X-rays can be directed at a piece of crystalline material, and the resulting dots on the screen behind it are a regularly spaced pattern. The regularly spaced dots are evidence that the atoms in the material have a crystal structure. If the atoms weren't in a crystal structure, the resulting pattern would be smeared rings.

X-rays are used because the wavelength of X-rays are roughly the same as the spacing between atoms, and therefore the diffraction is greatest. An electron beam can also be used to provide the same evidence.

Evidence of the size of nuclei
A beam of high-energy electrons can be used to find the radius of nuclei. High-energy electrons are electrons that have been accelerated to high velocities, so that their de Broglie wavelength could be changed to match the spacings of nuclei. The electrons are diffracted around different nuclei and calculations are done to find the radius of a nucleus from the angle of diffraction.

Relative sizes
The size of various particles were found from the above experiments as:

 * radius of proton ≈ radius of neutron ≈ $$10^{-15}$$m
 * radius of nucleus ≈ $$10^{-15}$$m to $$10^{-14}$$m
 * radius of atom ≈ $$10^{-10}$$m
 * radius of molecule ≈ $$10^{-10}$$m to $$10^{-6}$$m

Nuclear equations
If we look at a helium nucleus, we can see that it has two neutrons and two protons. It can be represented like this:

 * $$\ ^4 _2He$$

The 4 at the top represents the number of nucleons in the nucleus, and is therefore called the nucleon number, and sometimes the mass number. It is sometimes denoted by the letter A.

The 2 at the bottom represents the number of protons, and is therefore called the proton number, or atomic number, and is sometimes denoted by the letter Z. To be more precise, however, the proton number represents the charge of the nucleus, so that an electron is represented by:

 * $$\ ^0 _{-1}e$$

In all nuclear processes, there is always a balance. The number of neutrons and protons are always the same before and after a process, and so the nucleon and proton numbers must stay the same. Consider the reaction:

 * $$\ ^2 _1H + \ ^2 _1H = \ ^4 _2He$$

Here 2 hydrogen nuclei fuse to form a helium nucleus. You can add the nucleon numbers together, to give $$2+2=4$$, and you can add the proton numbers together, to give $$1+1=2$$. As you can see, both sides of the equals sign are balanced.

Nuclear fission
The splitting up of nucleus into two approximately equal fragments.

Nuclear fusion
It is when smaller nuclei combines to form larger stable nuclei.

Isotopes
Isotopes have same number of protons but different number of neutrons.


text:
Template:Yellow Warning

it:Template:Yellow Warning

title: Template:Yellow Warning


text:
User talk:EmilyGrace

Hello and welcome to Wikibooks!

Here are some tips to help you get started:
 * You can sign your name on Talk and vote pages using four tildes, like this: ~~~~.
 * Remember to conduct any editing experiments in the sandbox.
 * Check out our help page if you need additional help.
 * Eventually, you might want to read the Manual of Style and Policies and Guidelines.
 * Templates can save your time
 * Remember to maintain a Neutral point of view.
 * Explore, be bold in editing pages, and have fun!

You will find more resources in Community Portal. If you want to ask a question, visit the Study help desk, the Staff lounge, or ask me personally on my talk page.

Good luck!

Also, did you know you can make more than one change in each edit? And you can preview your changes with the "Show preview" button. I saw your edits on the Rhetoric module and just thought I'd say something. Cheers. -- LV (Dark Mark) 22:28, 6 December 2005 (UTC)

title: User talk:EmilyGrace


text:
Chess/Analysis of KQK Endgame

This book is an exact analysis of the KQK endgame, where one player has a King and a Queen and the other player has only a King. It is relatively easy to generate a computer database, called a tablebase, which has all the possible positions and the number of moves to checkmate for each position. Although this tablebase provides a complete solution to the KQK endgame, it is in a format that can only be used by a computer. This book shows the optimum method for forcing checkmate in a human-understandable format.

In normal play, there is no need to follow an optimal algorithm. A much simpler algorithm like the one in the Chess Wikibook will deliver checkmate only a few moves later than the optimal algorithm, but easily within the 50-move limit.

In all the positions given, by convention the stronger side is White. The number of moves to checkmate is the number of moves required by White, including the checkmating move. For example, in the sample position given, "White to play mates in 5" means that White's fifth move is the checkmating move, e.g. 1.Kb5 Kc7 2.Qe6 Kd8 3.Qf7 Kc8 4.Kc6 Kd8 5.Qd7#. If it is Black's move, "Black to play loses in 5" means that White's fifth move (which is numbered 6) is the checkmating move, e.g. 1... Kc6 2.Qd3 Kb7 3.Qd7+ Kb8 4.Kb5 Ka8 5.Kb6 Kb8 6.Qd8#. The results are for optimal play by both sides. If Black plays less than optimally, he could get checkmated sooner, and if White plays less than optimally, it could take longer to checkmate.

Drawn Positions
There are a total of 23,048 drawn positions in the KQK endgame. The drawn positions consist of only positions where Black is stalemated or the white queen is en prise.

There are four stalemate configurations, which are shown in the diagrams. If the black king is in the corner, the three flight squares can be covered by the queen as shown in stalemate position A. The white king can be on any of the remaining 59 squares, so considering rotations and reflections, there are 59 x 8 = 472 positions of this type. If the white king covers two of the flight squares (stalemate position B), the queen only needs to cover one square. If the white king is on b6, the queen has to attack along the diagonal, so there are five possible squares, while if the white king is on a6, it can also attack along the file, so there are ten squares. Considering rotations and reflections, there are 15 x 8 = 120 positions of this type.

With the black king on the side of the board, there are also two types of stalemate. In Stalemate position C, the queen covers four of the five flight squares, and the white king covers the fifth square, which it can do from five possible squares. The same thing happens with the position shifted 1, 2, 3, or 4 files to the right. When shifted 5 files to the right there are only two places for the white king. Thus, with rotations and reflections, there are 27 x 8 = 216 positions of this type. Stalemate position D shows a fourth type of stalemate. The queen covers four of the five flight squares again, but the fifth square is now next to the black king instead of diagonal from it. There are two squares the white king can be on, and the position can be shifted 1, 2, or 3 positions to the right. So with rotations and reflections, there are 8 x 8 = 64 positions of this type.

Next, we need to calculate the number of positions with the queen en prise. There are 64 possible positions for the black king. The white queen must be next to the black king, so there are three possibilities if the black king is in the corner, five possibilities if it is on the side, and eight possibilities if it is in the middle. The white king can not be next to the black king, as that would create an illegal position, and it can not be next to the queen, as it would then be protecting the queen from capture. The following table shows the number of possibilities for the white king for each configuration of white queen and black king.

The 22,176 positions with queen en prise plus the 872 stalemate positions account for the 23,048 drawn positions.

Checkmate positions
There are a total of 364 checkmating positions, which appear as "Black to move loses in 0" in the tablebase.

All of the checkmating positions have the black king on the side of the board or in the corner. With the black king in the middle of the board, there are two cases: the queen sitting next to the black king and the queen at least two squares away. If the queen sits next to the black king, it must be protected by the white king. As a result, the white king does not cover any squares not already covered by the queen, and the queen can not cover all the squares. If the queen is at least two squares away, it can only cover four squares in addition to giving check, and the white king can only cover three.

The checkmate positions fall into three major categories. In positions of type A, the kings are in opposition, with the queen checking from the side. The queen needs to be at least two squares from the black king, so there are six positions with the king on a8 and five each with the king on b8, c8, or d8. When the black king is on a8, the white king can be on b6 as well as a6, so there are six additional positions for a total of 27, so including rotations and reflections there are 27 x 8 = 216.

In positions of type B, the queen stands next to the black king, protected by the white king. There are two positions with the king on a8 and three each with the king on b8, c8, or d8. With the king on a8, the queen can also be on b7, so there are three more positions for a total of 14. Since one of the positions has all three pieces on the diagonal, rotations and reflections give (1 x 4) + (13 x 8) = 108 positions.

In positions of type C, the white king is on the file adjacent to the black king, and the queen checks from the side, two squares away. The square left uncovered by moving the king to the side is covered by the queen. There is one position with the black king on b8, and two each with the black king on c8 and d8 for a total of five, or 40 with rotations and reflections.

That gives a total of 216 + 108 + 40 = 364 positions, which are all the checkmating positions.

Positions of type C only make an evaluation difference for themselves and positions one ply previous. For example, going back from the diagram position, the queen must have moved last, and it could only have come from one of the following squares: a4, b5, e1, e2, e3, e4, e5, e7, f7, g6, or h5, since it could not have been giving check. If it was on e7 or f7, White could have chosen to checkmate on c7 instead of e8.

If the white queen was on one of the other squares and Black moved from b8, White would have missed a (Type A) checkmate. If Black moved from either d7 or d8, he could have moved to one of e7, d7, or d8 instead of c8, escaping checkmate for a while. The analysis is similar for the position moved one file to the right or one, two, or three files to the left, which are all the Type C positions. Thus, Type C positions can be safely ignored unless White has an immediate checkmate.

White mates in 1
There are 2,448 positions where White mates in 1. With the black king in the corner, there are 744 positions. If the position is rotated and reflected to put the black king on a8, the white king will be on either a6 (376 positions), b6 (320 positions), or c6 (48 positions). With the black king on the side of the board, there are 968 positions with the kings in opposition and 736 with White's king one square to the side.

The longest position
There is only one position (8 with rotations and reflections) that is mate in 10 with White to play. Since there are 8 squares the black king might have come from, there are 8 positions that are lost in 10 with Black to move. Since two of these have all the pieces on the same long diagonal, there are 56 total positions including rotations and reflections.

From the diagram, any move except 1.Qd5+?? and 1.Qc6+?? will work.

General algorithm
The next logical step in this process is to provide a general algorithm that can be used for all positions. I have not completed this analysis yet. I am having difficulty generating a list of possible moves from a given position (yeah - it seems really simple, but there are thousands of positions). I need to verify that all the moves that fit the pattern are actually optimal.

The general outline of the algorithm is:

1. Restrict the black king to either:

a. the rank or file at the edge of the board

b. the two ranks or two files at the edge of the board

c. the same half of the board as the white king, or

d. the same quarter of the board as the white king

2. Bring the white king near the black king

3. Force the black king to the edge of the board

4. Deliver checkmate

title: Chess/Analysis of KQK Endgame


text:
User talk:69.164.7.253

Please stop. If you continue to vandalize pages, you will be blocked from editing Wikibooks. -- LV (Dark Mark) 22:54, 6 December 2005 (UTC)

title: User talk:69.164.7.253


text:
Rhetoric and Composition/Colons

Colons are used to draw attention to certain words. They are used after an independent clause to direct attention to a list, appositive or quotation, between independent clauses when the second clause summarizes or emphasizes the first clause, or after the greeting in a formal letter. Some examples follow.

title: Rhetoric and Composition/Colons


text:
Rhetoric and Composition/Apostrophes

Use

 * Apostrophes are used to indicate possession and in contractions.
 * Add an "'s" when the noun does not end in an "s" (driver's) or when the noun is singular and ends in an "s" (Lois's).
 * However, if the pronunciation of a word would be awkward with the "s" added, it is acceptable not to use the extra "s".
 * If the noun is plural and ends in "s", you don't need to add an apostrophe (diplomas' instead of diploma's).

 * Joint Possession
 * If there is a compound noun, add the possessive apostrophe to the last noun.
 * Example: I went to see Anthony and George's new apartment. (The apartment belongs to both Anthony and George.)
 * If the compound noun indicates individual possession, add the apostrophe to both nouns.
 * Example: Mary's and Brian's sense of style was quite different. (Mary and Brian have individual senses of style.)

 * Compound Nouns
 * If a compound noun uses dashes, place the apostrophe after the last nouns.
 * Example: My brother-in-law's house

Common Misuses

 * Do not use apostrophes in nouns that are not possessive. Example:  Some parent's are more strict than mine.  (Apostrophe is not necessary)
 * Do not use an apostrophe in possessive pronouns such as its, whose, his, hers, ours, yours, and theirs.

title: Rhetoric and Composition/Apostrophes


text:
Talk:TeX

About

 * Started: 5 August 2004
 * Size: ? (Sep 2008)

Various
A laundry list of primitives is not very useful on the first page of this doc. Useful maybe in an appendix or separate pages.

Turing complete
"Turing complete" in "TeX is Turing complete" is a poor expression to use to address a general audience.

Naming policy violation
This book does violate Wikibooks naming policy, so I don't understand why template informing about it is constantly being removed from its main page. Backslash is not slash and pages like TeX\bye appear as separate books in statistics like "Random book" or.

I see no reason why subpages in this book couldn't be named TeX/bye instead of TeX\bye. --Derbeth talk 09:22, 5 September 2008 (UTC)

title: Talk:TeX


text:
Rhetoric and Composition/Quotation Marks

Use
Quotation marks are used to mark direct quotations. This is to give the original writer or speaker credit for their work. If you are paraphrasing, you do not need quotation marks.

 * If you are using a long quotation (long is constituted by 4 or more typed lines), instead of quotation marks, you should indent the quotation. If the quote is two or more paragraphs, indent the first line of the paragraphs an additional five spaces (plus the indent of the rest of the quote).  When indenting to quote, you do not need to use quotation marks.
 * If your quote has a quote within it, the inner quote needs one quotation mark and the outer quote needs two quotation marks.
 * Use quotation marks around the titles of short works such as newspapers and magazine articles, poems, short stories, songs and chapters.
 * Periods and commas should be placed inside the quotation marks. Colons and semicolons should be placed outside the quotation marks.  Question marks and exclamation points should be placed inside the quotation marks, unless the punctuation applies to the whole sentence (not just the quote).
 * You can set off words by using quotation marks instead of italicizing or underlining them.

Using quoted material within your own writing

 * If a quotation is introduced formally, use a colon.
 * If a quotation is being used with "he said" or "she said," use a comma.
 * If a quotation is blended into the writer's sentence, you can use a comma, although no punctuation may be more appropriate.
 * If a quotation is used at the beginning of a sentence, use a comma after the quote unless the quote ends in a question mark or exclamation point.
 * If you choose to break up the quotation with your own words, use commas to offset the quotation from your explanation.


text:
Handbook of Genetic Counseling/HIgA Nephropathy

IgA Nephropathy

What is IgA Nephropathy?

 * the most common non-diabetic kidney disease
 * IgA, a normal component of the blood, collects in the kidney as damaging deposits
 * due to either increased production or reduced clearance of the immune protein IgA and associated antigen complexes
 * deposits collect in small blood vessels in the glomeruli (the filtering structure of the kidney)
 * 20%- 30% of patients will suffer eventual kidney failure within 10-20 years
 * more likely if they have high levels of creatinine in blood at time of diagnosis
 * will require life saving dialysis and/or a kidney transplant
 * a large proportion of patients who present with symptoms have a mild form of the disease
 * most people probably never know they have the disease or discover it at a late stage

Warning Signs of Kidney Disease

 * tea colored urine (hematuria - blood in the urine)
 * very foamy urine (proteinuria - protein in the urine)
 * puffiness around the eyes, hands, or feet (edema - fluid retention)
 * high blood pressure
 * pain in the small of the back just below the ribs not aggravated by motion.
 * frequent urge to urinate especially at night, and/or reduced amount of urine produced

Treatment

 * no medical treatments except in the latest stages of the disease
 * transplant success rate is good (symptoms mild, though deposits will appear in the transplanted kidney after one year)
 * some therapies can delay the deterioration of kidney function for many years
 * ACE inhibitors, fish oil, steroid treatment, tonsillectomy
 * control of associated hypertension is important

Diagnosis

 * the presence of blood and/or protein in the urine
 * some nephrologists may microscopically examination urine and red blood cell casts
 * to confirm a diagnosis, it is necessary to perform a renal biopsy and examine kidney tissue microscopically for the presence of the characteristic IgA deposits in the glomeruli
 * no genetic testing available

Causes

 * unknown (recurrence risk also unknown)
 * genetic influences may play a role in the development of the disease
 * seems to cluster in certain families and in certain areas of the world
 * associated with major histocompatibility HLA and certain other genetic markers
 * HLA-DR4 is detectable in about 50% of patients


text:
Handbook of Genetic Counseling/Incontinence

Incontinence

General Information

 * Refers to inability to retain urine in bladder
 * Due to neurologic or mechanical disorder
 * Normal bladder function
 * Detrusor muscle provides propulsive force for emptying bladder
 * Smooth muscle under parasympathetic autonomic control
 * Involves pelvic nerves from sacral spinal cord
 * Layer of smooth muscle of trigonal part of bladder acts as involuntary internal sphincter
 * Helps prevent incontinence even if no voluntary control
 * Innervated by motor fibers from T11 to L2
 * External sphincter and perineal muscles under voluntary control of pudendal nerves
 * Sensory tracts of pain, temperature, and distention pass from bladder to pelvic nerves to sacral spine to medulla of brain to cortical centers
 * Infants and adults with spinal damage above S2 urinate spontaneously when bladder fills

Causes of Incontinence

 * Detrusor instability
 * Bladder prone to uncontrollable contractions
 * Caused by damage to inhibitory neural pathways (70% of incontinence among elderly)
 * Cerbrovascualr accidents
 * Alzheimer's disease
 * Neoplasia
 * Hydrocephalus (?maybe?)
 * Could also be caused by bladder or pelvic infection or tumor, fecal impaction, uterine prolapse, and prostate hypertrophy
 * May be treated with Imipramine or calcium channel blockers
 * Stress incontinence
 * Common in postmenopausal parous women
 * Structures of female urethra atrophy when deprived of estrogen
 * Pass urine under increased abdominal pressure during coughing, sneezing, climbing stairs
 * Physical activity may result in small amount of urine escaping
 * Mechanical incontinence
 * Congenital anomalies, extrophy of bladder, patent urachus, and ectopic ureteral openings
 * Correctable by surgery only
 * May also be caused by prostate surgery, pelvic surgery, or irradiation of uterus or rectum
 * Overflow or paradoxical incontinence
 * Large residual volumes of urine
 * Secondary to obstruction at bladder neck or urethra, or neurologic damage
 * May occur in diseases that produce autonomic peripheral neuropathy
 * Diabetes mellitus, uremia, hypothyroidism, chronic alcoholism, Guillain-Barre syndrome, collagen vascular diseases, and toxic neuropathy caused by carcinomas
 * Also may be due to prolonged distension of bladder
 * May be treated surgically if obstruction or with bethanechol chloride
 * Psychogenic and functional incontinence
 * Occurs in children and some adults
 * May be to draw attention to themselves
 * May have psychological cause from abuse or other traumatic experiences
 * Enuresis
 * Involuntary passage of urine at night during sleep
 * Considered normal under age of 2 years as neurological controls are still developing
 * Approximately 10% of children have some degree of enuresis beyond age of three
 * May be due to delay in maturation of bladder control
 * May be familial
 * Usually ceases by age of puberty unless disease interferes
 * Urinary tract infections, obstructive lesions, neurovesical dysfunction, and polyuric conditions that overload the bladder
 * Usually incontinent during the day also if one of these conditions

Reference

 * "Dysuria, Frequency and Urgency, Incontinence, and Enuresis." Principles of Internal Medicine (1994): 240-241.


text:
Handbook of Genetic Counseling/Infertility

Infertility

Much more than "just a female problem"

 * Infertility is a condition of the reproductive system. It refers to actively trying to conceive for one year without achieving a pregnancy.
 * Infertility includes difficulty conceiving, as well as the inability to carry a pregnancy to term that results in a live birth.
 * There are two types of infertility. Primary infertility refers to cases where there has never been any evidence of pregnancy. Secondary infertility refers to cases of miscarriage (where a pregnancy has previously been indicated).
 * Infertility may have one or several causes and is diagnosed with a series of tests comprising an "infertility work-up".
 * Approximately 40% of infertility is due to a female factor and 40% is due to a male factor. In 10% of the remaining cases, the infertility results from problems due to the combination of factors in both partners. The other 10% of cases cannot be explained.
 * Infertility affects 14-20% of married couples in the United States.

Common Causes of Infertility

 * Female:
 * advanced maternal age (past 35, it becomes harder for the pituitary to stimulate the ovaries)
 * history of pelvic inflammatory disease
 * history of miscarriage
 * tubal factors (blockage from infection or adhesions)
 * peritoneal factors (endometriosis)
 * inability to ovulate (polycystic ovarian disease, premature ovarian failure, hypothyroidism, hyperprolactemia)
 * uterine factors (fibroids, polyps, septum or other abnormality)
 * cervical factors (hostile environment, anti-sperm antibodies, too little or too much mucus, surgery/biopsy scars)
 * Male:
 * low semen volume (producing less than 1 or 2 cc)
 * low sperm count (less than 20 million per cc)
 * inappropriate sperm morphology
 * poor sperm motility
 * inability of the sperm to progress or move forward

Infertility Testing: What can we do?

 * physical examination of both partners - determine their general state of health and to evaluate physical disorders that may be causing infertility. Usually both partners are interviewed about their sexual habits in order to determine whether intercourse is taking place properly for conception.
 * If no cause can be determined at this point, more specific tests may be recommended. For women, these include an analysis of body temperature and ovulation, x-ray of the fallopian tubes and uterus, and laparoscopy. For men, initial tests focus on semen analysis.
 * karyotyping - check the couple's chromosomes for aneuploidy, rearrangements, or balanced translocations

Infertility Treatments: What are the options?

 * Assisted reproductive technologies (ART) is a collective term which refers to a variety of medical procedures used to achieve a pregnancy
 * in vitro fertilization (IVF) - sidesteps tubal factors by bypassing the fallopian tubes
 * hormone treatments - eliminates ovulation problems by using medication (such as Clomid) to stimulate the ovaries
 * intrauterine insemination - bypasses cervix factors
 * surgery - eliminates uterine factors by removing a septum or treating endometriosis
 * Intracytoplasmic sperm injection (ICSI) - uses IVF (which only requires one sperm) to avoid male sperm factors
 * donor eggs, donor sperm, surrogate carriers
 * Please keep in mind. . .Infertility often creates one of the most distressing life crises that a couple has ever experienced together. The long term inability to conceive a child can evoke significant feelings of loss. Coping with the multitude of medical decisions and the uncertainties that infertility brings can create great emotional upheaval for most couples. Couples often feel anxious, depressed, out of control, and isolated.**

Resources

 * www.asrm.org
 * www.resolve.org


text:
.NET Development Foundation/Iterators

Value Types
An iterator is a section of code that enables one to traverse a data structure and return each element of the same type in turn.

The iterator code uses the yield return statement to return each element in turn. When the yield return statement is reached, the current location is stored. Execution is restarted from this location the next time the iterator is called.

title: .NET Development Foundation/Iterators


text:
Handbook of Genetic Counseling/Keratoconus

Keratoconus

Assess Knowledge

 * What do you already know about Keratoconus?
 * What are your concerns today? What issues to you wish to discuss?

Intake and Family History

 * Discuss prepared pedigree to confirm the known cases of keratoconus

Etiology

 * the underlying reason for its development remains obscure; currently the topic of much research
 * usually an inherited corneal disorder, often in an autosomal recessive fashion
 * family members may have it, but it also can be random with no other family members affected (sporadic)
 * most likely that the cause is due to more than one factor
 * the path that leads to the thinning of the cornea may start with a "trigger", followed by a cascade of events in the eye tissues
 * the primary trigger is not known.
 * possible options include hormonal changes in the patient, genetic predisposition to altered cytokines and/or their receptors in the patient's cornea, or a pattern of eye-rubbing that could release factors
 * abnormal levels of degradative protease activity may then lead to a slow, progressive dissolution of Bowman's layer and the epithelial basement membrane
 * the epithelium then comes into contact with the stroma, cytokines/growth factors are released, and as a result, the cells begin to produce scar tissue and proteases
 * a disorder with local micro-environmental changes rather than a situation where the entire cornea is involved
 * within a single keratoconus cornea there are areas of increased protease activity (thinning) and other areas of ongoing wound healing (scar tissue buildup)
 * recent advances in molecular techniques make it possible to examine the molecular components in wounded or diseased corneas
 * CD45 (leukocyte common antigen or T200), a transmembrane phosphotyrosine phosphatase (normally found associated with blood cells), has been found to be present in more cells within keratoconus corneas than normal
 * these cells may represent the source of some of the proteolytic enzymes reported to be associated with keratoconus
 * a gene product referred to as glucose regulated protein (GRP78) has been found in greater quantity in normal corneas
 * a protein that aids or "chaperones" the folding and secretion of other proteins produced in cells
 * the reduction in GRP78 could affect the secretion and folding of the major structural proteins of the cornea which are reduced in the keratoconus cornea.

Incidence and Carrier Frequency

 * some cases have a hereditary component and studies indicate that about 8% of patients have affected relatives
 * most cases appear to be sporadic
 * the actual incidence is uncertain, large studies estimate 50 to 230 per 100,000
 * according to one study, the estimated prevalence in first-degree relatives is 3.34%, which is 15 to 67 times higher than that in the general population (0.23-0.05%). (Am J Med Genet 2000 Aug 28;93(5):403-9 )
 * occurs in all ethnic groups
 * has a slight female preponderance
 * is more common in contact lens wearers and nearsighted eyes
 * some researchers believe allergy may play a role

Clinical Features

 * non-inflammatory eye condition in which the normally round dome-shaped cornea progressively thins causing a cone-like bulge to develop
 * results in significant visual impairment
 * a degenerative condition where the cornea thins in affected areas and scar tissue develops
 * can lead to astigmatism - often regular at first but becoming increasingly irregular as the disease progresses
 * surface thinning can create several optical zones that individually focus the same image to different areas of the retina, thus creating multiple perceived images
 * has been associated with other medical disorders including atopic disease, Down's syndrome, Ehlers-Danlos syndrome, Marfan's syndrome, craniofacial dysostosis and osteogenesis imperfecta
 * not a blinding disorder, but does result in increasing near-sightedness (things far away are out of focus) and irregular astigmatism (things look tilted)
 * is almost always bilateral (90% of cases)

Natural History

 * in the earliest stages, slight blurring, distortion of vision, and increased sensitivity to glare and light occur
 * symptoms usually first appear in the late teens and early twenties
 * mean age of onset is 16; onset as young as 6 yrs has been recorded
 * rarely develops after age 30
 * may progress for 10-20 years and then slow in its progression
 * may halt at any stage from mild to severe
 * each eye may be affected differently
 * disease develops asymmetrically: diagnosis of the disease in the second eye generally occurs about five years after diagnosis in the first
 * patients may endure discomfort and reduced vision over a long period of time

Testing

 * can usually be diagnosed with slit lamp examination of the cornea
 * early cases may require corneal topography, a test that makes a stereo image which gives a topographic map of the corneal curvature
 * when advanced, the cornea will be thinner in areas and this can be measured by pachymetry
 * the biomicroscope is the only tool which allows a clinician to observe many classical signs of keratoconus: Fleischer's ring, stress lines of Vogt, corneal thinning and scarring, various types of staining with and without lens wear, increased visibility of corneal nerves, and corneal hydrops.

Management and treatment

 * eyeglasses or soft contact lenses may be used to correct the mild nearsightedness and astigmatism of early stages
 * as the disorder progresses and the cornea continues to thin and change shape, rigid gas permeable contact lenses can be prescribed to correct vision
 * contact lenses must be carefully fitted, and frequent checkups and lens changes may be needed to achieve and maintain good vision
 * rigid contact lenses aid in flattening the corneal surface and provide optimal visual correction
 * in severe cases, a corneal transplant may be needed due to scarring, extreme thinning or contact lens intolerance
 * a surgical procedure that replaces the keratoconus cornea with healthy donor tissue
 * 20-25% of those with keratoconus ultimately require corneal transplant surgery
 * success rate of greater than 90%
 * corneal transplant is warranted when the cornea becomes dangerously thin or when sufficient visual acuity to meet the individual's needs can no longer be achieved by contact lenses due to steepening of the cornea, scaring or lens intolerance
 * the more severe the keratoconus is, the more likely it is to see a dramatic improvement immediately after surgery
 * the majority of keratoconus patients have their sutures removed 6-12 months after surgery (depends on healing rate)
 * a small percentage of transplant patients do obtain uncorrected vision good enough that neither glasses nor contacts are needed after surgery, but in the majority of cases, some form of vision correction is needed after surgery

Support Groups and Resources

 * The National Keratoconus Foundation has a good website with patient resources (www.nkcf.org)
 * National Keratoconus Foundation
 * Davis Building, Suite 509
 * 8700 Beverly Boulevard
 * Los Angeles, CA 90048
 * (310) 855-6455 Office (800) 521-2524 Hotline (310) 652-8411 Fax
 * e-mail: nkcf@csmc.edu

 * The Center for Keratoconus has an excellent website (www.kcenter.org) with links to support groups, patient information, and research studies.
 * The Collaborative Longitudinal Evaluation of Keratoconus (CLEK) Study is a multi-center, observational study, the purpose of which is to characterize vision, corneal changes, and patient quality of life findings in keratoconus and to determine the progression of changes occurring with keratoconus over time. The CLEK Study is an eight-year study. Over 1,200 keratoconus patients are enrolled at 15 participating clinics across the United States. To participate in this study, link to the site through the Digital Journal of Ophthalmology's website (www.djo.harvard.edu).
 * A keratoconus mailing list is also available for those interested. To subscribe, send "subscribe keratoconus-link YOUR NAME" in the body of a mail message to listproc@ucdavis.edu.