text:
Skip to comments.'Someone Kill the Judge'
Posted on 04/23/2012 9:15:47 AM PDT by Nachum
George Zimmerman, the accused murderer of Florida teen Trayvon Martin, has been released from jail on bail. Meeting Zimmerman's release are calls (on Twitter) for him to be killed. As Twitchy reports, "Twitter lynch mob: George Zimmerman is out on bail? Lets kill him!"
But it's not just Zimmerman who is at risk. In fact, there's already been a call on Twitter for the murder of the judge, Circuit Judge Kenneth Lester, who agreed to release Zimmerman on bail.
Writing on a Twitter, someone named @Rick_Cobain writes, "Zimmerman released from jail someone kill the judge!!!!!"
(Excerpt) Read more at weeklystandard.com ...
Sorry but the Feds are waaaaay too busy talking to Ted Nugent to bother with anything like this.
The media will be responsible for his death - them and the blacks who hate!
I am surprised that the Latino population is so quiet over this...................
This isn't going to "end well" for the racists/race-baiters/flash mobs etc.
Just my opinion, but to my mind this warrants placement in breaking news.
Someone is now tweeting that the judge who granted bail and set conditions, should be killed.
Not just that Zimmerman himself should be killed.
It could end well for them since they politically protected class of people.
Welcome to Obama's Amerika...
I thought making death threats on a judge had you heading to jail? Why isn't this guy in custody?
Hey Janet Napolitano.. Eric Holder.. Where are you? Hello?
someone will kill him if he is in jail or if he goes to prison...he's screwed either way!
Clash of cultures.
—I am surprised that the Latino population is so quiet over this...—
It won't last. There was already a clash, I believe in Chicago. A public meeting. It ended up in a fist fight.
You really have to ask?
The vast majority of Hispanics there are either from Mexico or Cuba.
They by their sheer numbers might not care so much about a single half Peruvian.
Not *here*, it won't. Their so-called "protection" ends once the riots start.
Why wouldn't they be? Zimmerman's only half latino. And the press is stirring the war between blacks and whites. Latino's would be smart to lay low.
Domestic terrorist threat?
When the riots start the police are forced by the political establishment to stand by and do absolutely nothing but observe. It's only when Whitey starts fighting back that the cops will get involved.
He was safer in jail in confinement. He should have saved 15000 and eaten peanutbutter and cheese for two months. Z needs to be hunkered down in a basement somewhere. These people are nuts.i
These people calling for killing the judge and Zimmerman have something in common with the muzzies. If you don't agree....KILL!!!!!!!
Quanel X was on tv "debating" the Ted Nugent statement, and he came out and said, if anything happens to "our" president, there will be a general uprising. It's scary. Everybody walking around, looking at black people, you don't know how much of this crap they've ingested. You don't know how angry they might be at you for no reason at all. And they don't know the same about you. It's very tense.
Emboldened by this administration that looks the other way when Holder's people commit crimes and make threats.
I am surprised that the Latino population is so quiet over this...................
I said this from day 1.
It may be just on FR, but I get the sense that the "majority" are "over" coddling the minorities.
0bama & Co. are relying upon the media to foment a race war or any sort of chaos required that gives 0bama the excuse he needs to suspend the Nov. election. Remember, the Alinskyites rely upon creating the excuse they need to implement their agenda. So, in order to suspend the election, the excuse to do so must first be fabricated.
Let her know the result of her office.
Mailing address
Office of Attorney General
State of Florida
The Capitol PL-01
Tallahassee, FL 32399-1050
Email Attorney General Pam Bondi
Telephone numbers
Citizens Services:
ADA Coordinator:
Florida Relay/TDD:
Florida Toll Free:
After several racial deaths on both sides, Trayvon Martin's parents will hold a news conference and state, "Can't we all just get along?"
just a guess but I believe this is about to get out of hand
Twitter really needs to start banning these people making threats and ban their IP's.
No law anymore for the insane.
Apparently it's open season on Mr. Zimmerman and any person who attempts to allow him his Constitutional rights.
A friend of mine had a problem at a sports facility with some out-of-control black teenagers, but the black woman manager who responded refused to help and said they had their "rights." The white male supervisor was afraid to intervene.
The internet/twitter have created a lot of tough guys who say whatever they want. Twitter is one of the worst. I tend to avoid any topics that are trending b/c it is mostly a bunch of idiots who are involved with the discussion.
This guy will never get a fair trail and if they put any blacks on the jury he is really screwed.
Bingo, Jack.
What's coming won't be a Waco or Ruby Ridge, with helpless victims...
I think I'll withhold any further comment, JH.
I second that emotion...
There are those who WANT these kids to be arrested. It furthers the narrative of blacks being under attack.
Inciting a riot is a felony.
Color me cynical, but I swear that the current uber-tense race relations in this country (unlike anything we've seen since the late '60's riots) are EXACTLY what the Administration wants. Obama, Holder, the whole sorry lot of 'em.....they WANT this.
Their motivations are becoming more and more clear with each passing day. These people.....are dangerous.
The reality is Obama wants a race war!
Just a guess, but that may be the 'FR Understatement of the Day Award' winner ;-)
OH BTW Isn't threatening the life of a Federal Judge a Federal Felony???
You bet it is.
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.


text:
The Interlibrary Loan Department:
- Locates requested material and asks that the material be sent to the requesting library.
- Helps the staff of member libraries verify requests using appropriate technologies.
- Oversees training of new interlibrary loan personnel from member libraries and promotes adherence to the interlibrary loan protocols.
- Assists local librarians in securing the return of overdue interlibrary loan materials.
- Assesses interlibrary loan procedures annually and makes recommendations for improvements.
Through Interlibrary Loan Service any library in the state can offer patrons access to materials not available at the local library. Resource sharing among System libraries depends on a local commitment to interlibrary loan. System interlibrary loan services facilitate the transfer of library materials from one Kansas library to another in response to a specific patron request.
Interlibrary Loan Service is offered to all readers in the Central Kansas Library System area through the local public library, or, for rural residents, directly from CKLS by Phone-From-Home Service. Materials not available at the local public library may be requested on interlibrary loan through the local librarian. Rural residents may call CKLS directly for interlibrary loan assistance.
Photocopy requests of periodical articles or book sections may be sent to CKLS. If the request cannot be filled by CKLS resources, it is referred to another library which may charge a reproduction fee for the photocopy.
Librarians are encouraged to offer and promote interlibrary loan service to their patrons. Member libraries are encouraged to accept responsibility for training staff to handle interlibrary loan transactions and gather statistics as needed by the System or the State Library.

subset: commoncrawl


text:
Waiting to fly
6 Comments
Don't worry, you'll be okay.
I love the Denver airport. The voices and music on the people mover never cease to amuse me.
I actually watched that Rockets/Nuggets game. Thought it was pathetic. I've never understood basketball but I figured hey, it's another sport to watch, might as well. So I did; I enjoyed it, especially the shots of the snow outside the Pepsi Center. It's 70 degrees here.
Kylie — http://kylie.mlblogs.com
Thanks for all the good vibes, little bit of a scary landing because of the wind here in Chicago, but other than that, smooth sailing thanks to all the well wishes, and half a Zanex…It's late, tomorrow I get to explore this City a little bit. Again, thanks for all of the postitive vibes sent my way, I could feel it…D
Chicago's a great city… One of the best I've ever been to.
May I suggest Harry Carry's Restaurant. Great food. Awesome atmosphere. A good time all around.
Ditka's is also a nice place, and the namesake frequents the place regularly.
Glad to hear you made it back on solid ground.
You'll enjoy the city. Too bad the sports teams all blow:)
If (when) you're hungry, go check out Mike Ditka's restaurant,
100 E Chestnut St
Chicago, IL
(312) 587-8989
If you eat pork, try Da Pork Chop…mmm, good.
Kylie, Julia, Scott and the Hapster, Thanks all of you for the ideas. My ability to visit these cool places has been somewhat limited. Thanks for the ideas. I'll be checking up on all of your blogs when I get home…D


text:
BEST ENTRANCE: Entry 3
LOCATION IN MALL: Suite #363 in Neighborhood 3 next to Champs
Call (704) 979-0418 |
Get Driving Directions |
Visit Nine West Outlet Website |
View Deals | View Store on Mall Map
More stores to consider
Nine West
The Brielyn pump--new and just in time for the holidays. Shop: http://ow.ly/qdIb306YVYJ #ninewest
Read More
The Brielyn pump--new and just in time for the holidays. Shop: https://t.co/FaFl5xXd6U #ninewest https://t.co/QtHicJFqf7/p>
Who's joining us in NYC tonight? It's the ?????? event of the year!
The New Year's Eve Guide is In. Check it out: https://t.co/tSufnzvX7v #ninewest https://t.co/cXogVwaGXD/p>
The Sidekik boot earns its name—dress it up or down. Shop now: https://t.co/tcUEBUxARG #ninewest https://t.co/cam1k45ofs/p>
We have a major crush on velvet. Let the parties begin! #ninewest https://t.co/hcBb6aJbuA/p>
Boot up. The Gellen is a #winning cold weather. Get yours: https://t.co/gf3ImcFuFi #ninewest https://t.co/zNcKjLfFbW/p>
Gift to self: the new Palyla sneaker, now in rose gold. Shop it now: https://t.co/ff1J9rJtbR #ninewest https://t.co/viKrVqkJXK/p>
Holiday party in a snap with the Anisia clutch. Grab yours: https://t.co/ibZ6hO3nYr #ninewest https://t.co/zMnPazBjTv/p>
Dressed up or down, rain or shine, we're all about the Nolan bootie. SHOP: http://ow.ly/16Zo306Ecy2 #ninewest
Layer on the cool factor. Final day of our Cyber Monday sale. Shop now: http://ow.ly/GUFT306DmUy #ninewest
We know how to celebrate #nationalcakeday, amirite? Shop the Tatiana shoe: https://t.co/PAuWx6dZXw #ninewest https://t.co/r3wFTlyAWC/p>
Waiting in traffic? At least do it stylishly: https://t.co/P2NNKn0Xbm #ninewest https://t.co/ni2fnpS1Wj/p>
Need a gift for your favorite jet setter? The Ruana poncho is it, with so many ways to wear it. Shop:… https://t.co/jZ6tX62e5C/p>
The Orynne, a city hiker made for #nationaltakeahikeday: https://t.co/wChUwrbr1v #ninewest https://t.co/Ifs4Z98Mrk/p>
Don't be shy of shearling: it adds a cozy element to everything this season. Shop the Beleka Crossbody: http://ow.ly/9TSL3063Ao9 #ninewest
We love starting our weekend with a great sale. Buy one get one 60% off, you can't pass this up: http://ow.ly/JvIu30657f6 #ninewest
Who's up for some Friday flair? #ninewest https://t.co/W9X2dJCmjX/p>
We're feeling festive vibes - extra 40% off SITEWIDE + free shipping. Start here: http://ow.ly/KvV4306U0QC #ninewest
First, coffee. Then sales. It's Cyber Monday! Shop our sale: http://ow.ly/ZavH306BcPo #ninewest
Holiday dressing inspo via @ambersedits in the rose gold Tatiana pumps. Shop: http://ow.ly/Li5H306cVpg #ninewest
Holiday dressing inspo via ambersedits in the rose gold Tatiana pumps. Shop: https://t.co/GG1rcqkvPE #ninewest https://t.co/Tcg6HRaKUm/p>
The Gift Yourself Guide = self care. Look out for #1: https://t.co/cvKe0xm2vo https://t.co/8Dd1nkC9Qv/p>
If National Clean Out the Fridge Day is a real thing, this is how we do it at Nine West.
Friday flair a la the Uloveit bootie. Get yours: http://ow.ly/q1xw306YqcS #ninewest
Extra 40% Off Everything + Free shipping = Holidays are Here! Shop now: https://t.co/qtTHYsFjTg #ninewest https://t.co/FwmZk2utBT/p>
The Sidekik boot earns its name—dress it up or down. Shop now: http://ow.ly/nUpN306SqU4 #ninewest
Dress up the new rose gold Palyla sneaker with your favorite maxi skirts. Get yours: http://ow.ly/KaNt306L3dI #ninewest
Do you like to wear your booties with pants or dresses? Weigh in. https://t.co/SoAsTi9cyc #ninewest https://t.co/dz2oZ4Lkeq/p>
Come sleet, snow or rain, be prepared! Stock up now- last day for Cyber Monday prices. Shop:… https://t.co/UHXYG9DbUZ/p>
Nine West's cover photo
Gift guides? We've got 'em. Shop now: http://ow.ly/qE0x306jaYT #ninewest
Gift guides? We've got 'em. Shop now: https://t.co/f2TaLSjyFd #ninewest https://t.co/fwnBKYiTaP/p>
Ready to indulge? Shop the Kaylee shoe: https://t.co/aN2IY3fH95 #happythanksgiving #ninewest https://t.co/ofVIfgaceP/p>
Waiting in traffic? At least do it stylishly: http://ow.ly/zU43306j6AZ #ninewest
Be an over-the-knee achiever. The Tiberia is it: http://ow.ly/sbti306hsHC #ninewest
Be an over-the-knee achiever. The Tiberia is it: https://t.co/Fnj6dGxQuu #ninewest https://t.co/SW9If2RsBW/p>
The Ruana poncho doubles as an oversized scarf. Shop: http://ow.ly/bUhR306fnmP #ninewest
Need a shift in perspective? We've got just the frames. Find your local Nine West optical location here:… https://t.co/DLHMPOliBr/p>
Outfit inspo: dress down with the Neya sneaker on Sunday, dress up in the Kellan boot on Monday. SHOP:… https://t.co/8WsuKlxZE3/p>
The New Year's Eve Guide is HERE. Take a peek: http://ow.ly/tM2K306UOs4 #ninewest
Velvet is back and better than ever! Shop Now: http://ow.ly/5FnN306L8IK #ninewest
Mad for plaid? Us too. Grab your holiday-ready shoes... https://t.co/2u3zttjL2l #ninewest https://t.co/4Yyvnfc7dj/p>
The cherry on top: the Shaker Stitch beanie is in. Shop: http://ow.ly/jfai306GE46 #ninewest
Holiday party in a snap with the Anisia clutch. Grab yours: http://ow.ly/Q9Ki306jbHU #ninewest
Our favorite holiday, #cybermonday, is finally here! Add the Nine West sale to your to-do list:… https://t.co/aowycXepsq/p>
Our cake takes the cake if we do say so ourselves. Cake creation a la Aestheticakes. Get the Tatiana shoe: http://ow.ly/BWOn306j9wY #nationalcakeday #ninewest
50% Off Boots & Booties for Black Friday. Hurry: http://ow.ly/oqmb306j8A0 #ninewest
Our #BlackFriday sale = 50% Off All Boots & Booties + Free Shipping: https://t.co/zrzMmqcWrx #ninewest https://t.co/Tl9IHA0PwN/p>
Serving up the Kaylee shoe on a platter today...please indulge. SHOP: http://ow.ly/a62H306j75P #happythanksgiving #ninewest
Not sure what to pack for the long weekend? We've got you: http://ow.ly/ZeLC306j64p #ninewest
Let the packing begin! #ninewest https://t.co/WzrWgvQ7Bu/p>
The Ruana poncho doubles as an oversized scarf. Shop: https://t.co/AgBbRo8Qak #ninewest https://t.co/5pREzx2j86/p>
Too cool for ballet school? Enter the Zoona lace-ups: http://ow.ly/oe1o306cUQK #ninewest
The Zoona: too cool for ballet school. Shop: https://t.co/a8yIBJz72h #ninewest https://t.co/gD9PqFpIcJ/p>
Introducing the Gift Yourself Guide. Where being selfish means you get the best shoes first. Treat yourself: http://ow.ly/10QV306cr3Q #ninewest
How Nine West rolls on #nationalcleanoutthefridgeday. https://t.co/vbIdRZj3dI/p>
Shearling. What dreams are made of. Shop the Beleka Crossbody: https://t.co/T8ZBY9g3BU #ninewest https://t.co/IUJDnETjPK/p>
What better way to start the weekend than with a sale - Buy One Get One 60% off. Don't miss out:… https://t.co/tdAhWtYxb0/p>
Step into the season with the Gellen, cozy cold weather boots that are also cute. Win-win. Shop: http://ow.ly/156U306L7Ya #ninewest


text:
Wednesday, January 23rd, 2013 Mill Valley Public LibraryCreekside Room7 PM (doors open at 6:45)Ins and Outs of Email for Beginners | January 23rd, 7:00pm Whether you have an email account but no idea how to work it or you don't have an account but would like to get one, this class will help you learn the basics of email: creating a secure password, composing messages, adding attachments, organizing your messages, and more.
Instructor: Ali BirnbachAli Birnbach grew up in the East Bay before heading to Knox College in Illinois, where she graduated with a bachelor's degree in English Lit. After experiencing the Midwest, she attended Boston's Simmons GSLIS program, where she earned her master's degree in Library and Information Science. She is currently a reference librarian and volunteer coordinator at the Mill Valley Public Library, and enjoys providing reading suggestions.
Experience required: Basic computer skills, using a keyboard and mouse
Pre-registration required. Click here to register.
Thank you to the Mill Valley Library Foundation and the Friends for their generous support of Library programs and services. Click here to support Library events.
© 2016 Mill Valley Public Library | 375 Throckmorton Ave | Mill Valley, CA 94941 | (415) 389-4292
Contact the Library | Privacy Policy & Disclaimer | Website developed by Vision Internet


text:
Welcome to Vertex Automotive, your best source for Porsche
Parts & Porsche Accessories.
For over 25 years, Vertex has
built its business on successful, long-term relationships with our clients. Our
commitment to a quality product, prompt and efficient service, as well as our
extensive product knowledge and technical expertise has made us the Porsche
parts industry leader. Whether you are restoring, rebuilding, maintaining or
upgrading your Porsche, Vertex Automotive has all the Porsche parts and
accessories you'll need at the best prices. Please take the time to browse
through our extensive
Aftermarket Porsche
Parts Catalog.
Have a great day and enjoy your Porsche!
Transmission, Rebuilt
Porsche 911 Rebuilt Transmission - 915
Porsche 996 C2 Rebuilt Manual Transmission
Porsche 996 C4 Rebuilt Manual Transmission
Porsche Boxster Rebuilt Transmission - 5 Speed
Porsche 996 C2 Rebuilt Tiptronic Transmission
Porsche Boxster Rebuilt Tiptronic Transmission
Porsche 993 Rebuilt Transmission - 6 Speed G50
Click Here to Login
Porsche OEM Parts by Model: Porsche 911 Parts / Porsche 928 Parts / Porsche 944 Parts / Porsche 993 Parts / Porsche 996 Parts / Porsche 997 Parts / Porsche Boxster Parts / Porsche Cayman Parts / Porsche Cayenne PartsPorsche Performance Parts / Porsche Rebuilt Cylinder Heads / Porsche Control Arms / Porsche Cayenne Drive Shaft /
Porsche Clutch Kit
Home / Catalog / Contact Us / Policies / Return Policy / Login / Classified / Forum / FAQs /
ChatChatEmail Sign Up
©2015 Vertex Automotive 3050 S.W. 38th Ct Miami FL 33146 * Phone: 305-442-2727 * Toll Free: 866 -668-0660 * Fax: 305 -442-1072


text:
Earth Day by the numbers
Published On: Apr 10 2012 09:04:15 AM PDT Updated On: Apr 22 2015 12:00:00 AM PDT
Founded 45 years ago as a day of environmental education, Earth Day is now celebrated worldwide. Check out the numbers behind this global holiday.
The views expressed are not those of this company or its affiliated companies. By posting your comments you agree to our Terms of Use.


text:
June 2012
20 June, 2012 | (01 hr)
Sign In to access this Webcast
In the 2012 edition of The Conference Board CEO Challenge® survey, human capital was the second ranked challenge globally but number one in China. What can companies do to attract and retain employees in the current market? What are the implications of China's current five-year plan? The webcast features highlights from recent publications from The Co, including the CEO Challenge report Risky Business Focusing on Innovation and Talent in a Volatile World, a series of Executive Actions on human capital challenges in Asia Pacific, and Reading the Tea Leaves: The Impact of China's 12th Five-Year Plan on Human Capital Challenges.
Series Host
Rebecca L. Ray, Ph.D.
Executive Vice President, Knowledge Organization and Human Capital Practice Lead
The Conference Board
Rebecca Ray serves as executive vice president, Knowledge Organization, The Conference Board. In this role, she has oversight of the research planning and dissemination process for all three practices areas (Corporate Leadership, Economy & Bus... Full Bio
Amy Lui Abel, PhD
Amy Lui Abel is Managing Director of Human Capital at The Conference Board. She leads research efforts focusing on human capital analytics, leadership development, labor markets, strategic workforce planning, talent management, diversity and inclusion, human resources, and employee engagement.&nb...Full Bio
Lindsay Collins
Lindsay Collins is project manager, research and business information service at The Conference Board. She is responsible for the organizational, administrative, and financial management of research projects across knowledge areas, with specific focus on organization wide and third party pro...Full Bio
Shi Bisset
Shi Bisset is a Senior Fellow, Human Capital at The Conference Board. In this role, Shi supports the Human Capital Practice which includes The Conference Board Human Capital Exchange™, research, conferences, webcasts and programs in a broad spectrum of human capita...Full Bio


text:
Sun Smarties™
Award Winning
Pediatrician recommended, because our baby and kids' sunglasses block 100% of UV rays! These sturdy shades are impact and shatter resistant, with polycarbonate lenses and a stretchy neoprene strap that ensures they stay put. The pinch-proof glasses frame is such high quality; it's approved for use with kids' prescription lenses. Choose Infant (0-24 mos.) or Toddler (2-5 yrs.).For more information, click here.
Where can this be sent?
Shipping Restrictions & Policies:
Sign in to your Address Book.
To check if any specific restrictions for this item apply to any United States shipping address, please enter the information below.Sorry, this service is not available to Canadian addresses.
This is being shipped to a P.O. Box
This product has the following shipping restrictions:
Cannot ship to:
© 2016 One Step Ahead


text:
By Marlena Hartz: CNJ staff writer
When La Casita Elementary did not make Adequate Yearly Progress last year, school officials had to change the way they taught.
According to AYP scores, a federal measure of math and language arts proficiency and a part of the president's No Child Left Behind push for accountability, La Casita fourth graders needed to improve their math skills.
"We decided to focus on the student's who neared proficiency in math — to give them that extra push they needed to make it into the proficient category," said David Briseno, former principal of La Casita, now the federal programs director for Clovis schools. "We said OK, 'where do we need to work with students in math?' We focused a lot on that throughout the school year."
This year's AYP results — for New Mexico, all its districts, and all its schools — will be released Monday to the public. The measure expanded in 2004-2005 to include grades three through nine and high school juniors.
Six schools in Clovis and eight in Portales did not make AYP last year. They now teeter on the brink of a five-prong federal program: If a school fails to make AYP for two consecutive years, it enters into the first phase of the program, "School Improvement I," and is required, among other things, to provide students access to a school not marked in need of improvement. If the school continues to consecutively fall short of AYP standards, the end result could be possible replacement of all or most of the school's staff.
Across the state, 34 of 89 districts did not meet AYP in 2003-2004.
"It's a scary process for schools. We are in situation where the community doesn't decide anymore whether we have a good school. That's decided by a report," Clovis Superintendent Rhonda Seidenwurm said from her office.
Seidenwurm, like many, is ambivalent when it comes to AYP and the mandates of the No Child Left Behind Act, which are turning some schools topsy-turvy.
"This test really requires that kids think critically," Seidenwurm said. "If our teachers are teaching to that test, then I'm thrilled. It is an excellent test, very rigorous and very relevant to the kinds of things our kids will have to do in the real world."
Last year, Portales Junior High School Principal Steve Harris was proud of his students AYP performance even though his school didn't make AYP.
The school landed on the dreaded list because special education students, a labeled AYP subgroup, fell short of AYP reading standards, therefore, the entire school failed AYP. It is this, and the way in which student progress is measured, that has Harris, and a lot of other professionals, irked.
"It pushes schools to do the best they can, but it's not a good judge of what an entire school does. A subgroup (such as special education students) can be as small as 25 — the school is being judged on 1/12 of the school's population," Harris said.
Harris also said the test's tracking system is skewed. He is part of a growing camp of lobbyists who believe AYP results should be tracked individually rather than by grade.
"They are not even tracking the same group of kids from year to year," said Harris. For example, he said, the federal government will hold this year's seventh-graders accountable for improving the scores of last year's seventh-graders.
"There are always ways to do things better. The whole idea of No Child Left Behind is great, but I don't think it's reality," said Harris who hopes for more pragmatic AYP standards.
As the Clovis-Portales area braces itself for this year's AYP tidal wave, Seidenwurm waxes … pragmatic.
"Test scores in mathematics will be down across the state because it is the first year all grades were given the test," Seidenwurm said. "You had lots of teachers who gave this test in April who had never given it before and had no clue what the test was looking for. Because it is the first year all grades were given," she said, the expectation is low, but "benchmarks will be set."
That means this year will set the bar for years to come. The end goal: 100 percent student proficiency in language arts and math by the year 2014.
And Clovis, the superintendent oft-reminds, is in "the same boat as the rest of the state."


text:
"This show is a huge part of my conversion. I've learned more from it in six months than I had in my twelve years of Judaism and 30-plus years of atheism. Your answers always have a solid foundation and the show is inspirational."
"The laws of Caesar are one thing, the laws of Christ another."


text:
Inside RelativeLayoutby James Elliott, coauthor of Java Swing, 2nd Edition
As promised in my first article, "RelativeLayout: A Constraint-Based Layout Manager," here's a look inside the
RelativeLayout package. This article explains how the layout manager works, and discusses how to extend it to support new kinds of constraints. Readers should be familiar with the original article, which introduces
RelativeLayout and explains how to use it as a tool.
Once you download and expand the source archive, you'll find the following items inside of it (Figure 1 shows everything it will contain once you're ready to build and run
Figure 1: RelativeLayout Source
This is a build file for the Ant tool from Apache's Jakarta project. It is used to compile and test
RelativeLayout. Once you have installed Ant on your system (which you have likely done already, since it has rapidly and deservedly become the build tool of choice for Java projects) you can compile
RelativeLayout simply by moving to the top-level source directory and typing
ant compile (after you've set up the
lib directory as described below).
Other interesting build targets you can run include:
ant ex1: runs
the first example program discussed in the first article. Similarly, the targets
ex2 and
ex3 run the second and third examples.
ant doc: builds the JavaDoc for
RelativeLayout. You may want to refer to this documentation from time to time as you read the overview of how the classes work, below.
ant dist: builds the distribution file
RelativeLayout.jar so you can easily use
RelativeLayout with other projects.
ant clean: cleans up any generated files and removes the
doc and
classes directories.
example2.xml and
These files are used by the XML-based examples in the first article. They contain the layout constraints used by the second and third example programs.
Contains libraries used by
RelativeLayout. It's empty when you first download and expand the source archive, because these libraries are available from separate organizations. In order to compile and use
RelativeLayout, you'll need the JDOM library and (if you're using a Java SDK earlier than version 1.4) an XML parser such as Apache Xerces, as discussed in the first article. Once you've downloaded any libraries you need (which you likely did in order to run the examples when reading Part 1), copy their library jars (e.g.
jdom.jar and
xerces.jar) into the
lib directory, and
RelativeLayout will compile and run properly.
I used this file along with a test program while I was developing
RelativeLayout. It's not too useful now, unless you want to study and play with that test program. Note that the current configuration of the program (invoked through
ant test) and this file are inconsistent and cause an over-constraint error to be reported. If you're into that sort of thing, debugging and fixing the problem could be an interesting exercise.
The rest of the source is organized under the
src directory, so let's move in there and see what we find.
Related Reading
Java Swing
src/Example2.java, and
These are the three example programs discussed in Part 1.
This is the test program that works with
test.xml as described above. It's no longer of much interest except for software archaeology, in that it provides a little insight into the development of the package.
This package overview document is used by JavaDoc to provide introductory information on the starting page.
The Java source for
RelativeLayout itself is grouped under this directory. To be precise, it's in the nested directory src/com/brunchboy/util/swing/relativelayout, corresponding to the package in which the classes themselves are organized,
com.brunchboy.util.swing.relativelayout. The classes that make up
RelativeLayout are explained in the next few sections. You'll best understand how everything works if you can examine the source itself while you read the descriptions below, perhaps by printing one or the other.
relativelayout directory also contains the file
package.html, used by JavaDoc to provide an introductory explanation for the classes in the directory, and
constraint-set.dtd, the XML document type definition (described below), used by
XmlConstraintBuilder to parse constraint specifications expressed as XML.
The source code for the classes that make up
RelativeLayout includes extensive JavaDoc and internal comments that explain how they work. Rather than trying to reproduce that information, this article provides an overview of the relationships between the classes and how they work together. The goal is to provide you with a framework for understanding the architecture, and a starting point for delving into the documentation and source itself. As noted above, you'll find all of this source code in the directory src/com/brunchboy/util/swing/relativelayout and you should refer to it as you read this overview.
Here is a class diagram, in the style we use in Java Swing, that should help visualize the high-level relationships between the classes and interfaces I'm about to introduce:
There are two type-safe enumerations used throughout
RelativeLayout to represent information about constraint and component attributes. The type-safe enumeration pattern is a great way of representing a fixed list of values in Java. It is covered in depth in Joshua Bloch's Effective Java Programming Language Guide (Addison Wesley Professional), and Sun has also made this section, "Replace Enums with Classes," available online.
RelativeLayout, the
AttributeAxis class represents the two axes on which component attributes can be defined (
HORIZONTAL and
VERTICAL), while the
AttributeType class defines the eight attributes that position a component within a layout (
HEIGHT, and
Both enumerations provide
toString() methods so that their members can be printed out to show descriptive information, and static
getInstance() factory methods that look up the instance corresponding to a name (which comes in very handy when building constraints from XML specifications).
AttributeType also has several other features, illustrating how an enumeration can grow into a functional class. Its members know, through the
deriveValue() method, how to "fill in" missing values using other component attributes -- for example,
WIDTH can be calculated if you have the
LEFT and
RIGHT attributes. Each attribute type also knows the
AttributeAxis on which it applies, and
AttributeType provides lists of all attributes defined for each axis. All of this makes it easier for
ComponentSpecifications and
DependencyManager to do their bookkeeping.
Constraints between components in
RelativeLayout are expressed using the
Constraint interface. The idea, as you'd expect, is to nail down exactly what is needed out of a constraint, so that multiple implementations with different details can evolve. As originally posted,
RelativeLayout provides two different kinds of constraint, but you're free to come up with new ones if you have an interesting idea, as described below.
There are only two methods a
Constraint implementation needs to support:
getDependencies() returns a
List containing any attributes whose values must be determined before this constraint's value can be calculated, and
getValue() performs that calculation, assuming the dependencies have already been resolved. The discussion of the two built-in
Constraint implementations (below) provides examples of how these methods are implemented.
In order to keep
Constraint from needing to know any details of how the rest of the dependency manager and layout manager are implemented,
getValue() relies on another interface,
AttributeSource, to provide it with the attribute values it needs when it is calculating its value. In other words, it's up to the object calling
getValue() on a constraint to know how to feed it the values of any attributes used in the calculation.
RelativeLayout keeps track of all known constraints and attributes, and thus is easily able to act as the
AttributeSource when it needs to ask one of those constraints to calculate its value.
Armed with these enumerations and interfaces, we're ready to build the
Attribute class.
Attribute is a simple class that aggregates some pieces of information to uniquely identify an attribute being managed by
RelativeLayout: an
AttributeType and the name of the
Component to which the attribute applies. It also has some methods that ensure instances can properly be compared to see if they're equal (represent the same attribute type of the same component), and can be stored efficiently and correctly in hash tables.
Although not very interesting in and of itself,
Attribute makes the code of the remaining classes simpler to write and easier to understand.
There are two classes that do most of the "heavy lifting" in
ComponentSpecifications keeps track of all of the important details associated with an individual component, and
DependencyManager figures out the order in which all constraints need to be calculated so that each one can be sure that any attributes it relies on will be ready for it. These classes work closely with each other.
ComponentSpecifications is in charge of keeping track of all of the
Constraints that have been set up for a particular component, and asking those constraints to resolve themselves when the
DependencyManager determines that the time is right. It also helps the
DependencyManager identify the attributes a given component will need to have resolved before its own constraints can be calculated. Each component being laid out within
RelativeLayout will have its own
ComponentSpecifications instance managing its constraints.
During layout, as constraints are resolved, their computed values are also tracked.
ComponentSpecifications interact closely with their associated components to actually size and position them once all of the attributes have been resolved, and to figure out the size the components would take up if "left to their own devices" (for example, if a component has been assigned a constraint that centers it in the window without affecting its size). Also, when trying to estimate a minimum possible size for the layout (such as when the user is trying to shrink a window), the component will be asked for its minimum size.
There is one extra instance of
ComponentSpecifications created to represent the container being laid out. This acts as the "root" set of attributes used by all constraints, since the height and width of the container are known when layout occurs, and used to calculate the positions and sizes of all of the other components.
ComponentSpecifications makes sure that a reasonable
set of constraints have been supplied for its component. It throws an exception
if an attempt is made to over-constrain its component on either axis, or if
layout is attempted before there are sufficient constraints on both axes to
uniquely determine the layout of the component. The introduction to Attributes
and Constraints in the first article detailed these requirements.
DependencyManager, on the other hand, is in charge of the "big
picture." Trying to figure out the value for a constraint that can depend
on other constraints (and so on), in a potentially lengthy chain, might seem dauntingly
complex. In the end, though, all constraints must end up depending on some known
value, or layout would be impossible. So there must be some set of attributes
that can be calculated immediately -- the ones that are defined only in terms
of the container itself. Once these are resolved, there is another set of attributes,
which depend only on the ones we just calculated, that we can now calculate.
And so on, until all attributes have been resolved.
If only we knew the right order in which to calculate constraints, we'd never
be faced with a request for a value that we didn't already know. And it's the
role of
DependencyManager to figure out that order, making the
process of resolving the constraints a straightforward one. Even this is easier
than you might expect. As each
Constraint is added to
it is queried for its dependencies, and these are all registered with the
Using an inner class called
Node (the name gives away the computer-science-geeky
nature of this part of the system), the dependencies are organized into a set
of dependency trees.
Node instance represents the dependencies on a single
It stores a list of every "dependent" attribute that needs to wait
for this "anchor" attribute to be figured out before it can itself
be calculated. Here's a sketch of part of the dependency trees that get built
for Example 1. In this sketch, attributes
are represented using the shorthand "
Recall that the attributes of the container in which layout is being performed
use a special component name of "
_container", accessible
through the constant
The arrows coming out of a node represent the dependents of that node. In this
case, the
HORIZONTAL_CENTER attributes of both the
ok components depend on the
of the container, while the
TOP of
version depends
on the
BOTTOM of
title, which in turn depends on the
TOP of
title and finally, the
TOP of the
container. (If you're really familiar with the example, you may wonder where
the dependency from the bottom to the top of
title came from -- it
wasn't a constraint we supplied. This is an example of a "derived dependency": given any two attributes for the same component on a particular axis, it is
possible to calculate the others. In this case, from the title's
which we've constrained, and its
HEIGHT, which is determined by
the component itself, we can calculate the
knows about these derived dependencies, and reports them to the
so they show up in the trees.
Given the complete set of dependency trees represented as
DependencyManager can check that it has a valid and usable
set of dependencies, and sort them in the order in which they need to be resolved. It
starts by figuring out which nodes are roots, which means they have
no arrows pointing at them. Each node has a "reference count" to help
in this process. To begin with, each is set to zero. Then all of the nodes are
examined. If a node has any dependents, the reference count of each dependent
is incremented (the more arrows that point to a node, the higher its reference
count). When this is done, any nodes whose reference counts are still zero are
the roots. Any node that turns out to be a root had better belong to the special
_container" component, the attributes of which are known in
advance, or it will be impossible to ever resolve. If any such rogue roots are
DependencyManager throws an exception, reporting that
the dependency graph is under-constrained. If any node is found that depends
on itself (points to itself), an exception is thrown as well, because circular
dependencies can't be resolved.
The next step is a more thorough test for circular dependencies. Starting with each of the roots, the trails of arrows are followed, counting the number of hops that have been taken. If, during this process, the length of the path from a root ever gets longer than the total number of nodes, this means that there must be a loop in the tree. If this happens, an exception is thrown to report the circular dependency.
If we've survived this far, it means that each individual component is happy
about its constraints, and the
DependencyManager has found a valid
set of dependency trees, so layout can proceed. All that remains is to sort
the nodes (which correspond to attributes) in the order in which they can be
calculated. It turns out that the reference count we came up with for finding
roots helps here, too -- we interpret it as the number of dependencies that need
to be resolved before each node can be calculated. Starting with the roots again,
we look at each dependent. Since we know the root is already resolved (doesn't
require any calculation), we can decrement its dependents' reference counts.
If any reach zero, that attribute is now ready to be calculated, so we add
it to the sorted list, and perform the same operation recursively on its own
dependents, which might now be ready for calculation themselves.
If you look at the source code for the
sort() method and think
about the trees in the example (or perhaps some slightly more complicated, but
valid ones), you should be able to convince yourself that at the end of this
process we end up with a list of attributes in an order that guarantees that
we can calculate each one, and never run into a situation where one depends on
another attribute whose value isn't yet available. This is the magic that makes
RelativeLayout work.
RelativeLayout Itself
RelativeLayout class pulls everything together,
and is the main point of contact for your own programs as well as for Swing.
It implements the
LayoutManager2 interface so you can assign it
as the layout manager of a Swing container. Its
methods create the
ComponentSpecifications objects to help with
the dependency-managed layout process, and keep track of all components being
managed. If you look at the version that accepts a constraints object, you'll
see I was thinking of building a way to let you pass in a full set of
definitions at the time you added an object to the container, but it turned
out that the XML-based approach was more convenient than this idea anyway, so
it was never implemented. Instead, you either use the
method to manually register your constraints, or, more likely, let
XmlConstraintBuilder do it for you.
When it comes time for the container to be laid out according to your constraints,
Swing calls
layoutContainer(). This figures out the available size
of the container, calls the
resolveComponents() method to perform
all of the bookkeeping and calculation described in the previous section (although
most of it can be skipped if no constraints have been changed since the last
time layout was performed), then positions and sizes the components based on
the results.
There are a couple of other methods used to estimate the preferred and minimum
sizes for the layout (which are based on the constraints and the preferred or
minimum sizes of all of the components). Swing uses these when it's trying to figure
out how much space to give the container if it's nested in another container
that cares, and (in some Look-and-Feels) to prevent you from shrinking a window
so much that it crushes components into smaller spaces than they want to fit.
The way
RelativeLayout estimates these sizes is to pretend the
window is as small as possible (zero by zero), perform layout based on the minimum
(or preferred) sizes of the components, then measure how badly they didn't fit.
We've already looked at the
Constraint interface, which sets up
the general behavior that is required of a constraint within the layout process,
but the actual details are dependent on classes that implement the interface.
RelativeLayout ships with two such implementations, and by creating new ones
it's possible to add new capabilities to the layout
AttributeConstraint gets its value from an attribute
of an "anchor" component, plus some fixed offset (which may be zero).
It also can work with a list of several anchor components, in which case the
attribute is calculated from the smallest bounding box that encloses
the components. The implementation is pretty straightforward: it keeps track
of the component(s) on which it bases its value, as well as the
to use and the offset. The constructors set these all up, and build a cached
list of dependencies on the specified anchor components to speed things up later
on. Supporting the mandatory
getDependencies() method is therefore
trivial -- it just returns this list. For the other required method,
it loops over the anchors, tallying up the values of the desired attribute in
the appropriate way, and returns the result.
Related Reading
Java and XML
AxisConstraint lets you specify a fractional
point along an axis of an anchor component as the source of its value. The constructor
records all of the necessary information: the component of interest, the axis you're
using, and the position along that axis. It also creates a cached list of its
(two) dependencies. If you're using a horizontal axis, it needs to know the left
edge and width of the anchor; for a vertical axis, it uses the top and height.
As before,
getDependencies() can simply return this list, while
getValue() looks up these two attributes and does the simple math
required to return its result.
As you can see, the code required to implement the
interface, even for some pretty useful constraints, is quite straightforward.
All of the above classes are enough to implement the dependency-managed relative
layout manager. In fact, they were written first, and
RelativeLayout was useful
with just them. I wanted to be able to use a more compact way to express dependencies
and constraints, though, and XML configuration files were an appealing solution.
To take best advantage of a validating XML parser (so the Java code need not worry about whether the XML file has the right elements and structure), the first step is to come up with a specification for the format of the configuration file; one that can be understood by the parser. This takes the form of an XML Document Type Definition (DTD).
Creating a DTD is something of an arcane art (or at least, I still find it so). I'd previously created a couple of simple ones, but I definitely learned a lot creating this one. I wouldn't have been able to tackle it without help from both Brett McLaughlin's Java & XML (2nd Edition, O'Reilly & Associates) and Bob DuCharme's XML: The Annotated Specification (Prentice Hall). Although the latter is a little dry, it's the only place where I've found detailed explanations and examples of all of the pieces that can go into a DTD, and how they constrain the parser.
The DTD is short enough to walk through the entire document here, in case it
helps anyone else have some of the "a-ha" experiences I did when assembling
it. If this doesn't interest you, or becomes hard going as we dig into the weeds,
feel free to jump ahead to the discussion of
The beginning of the file is just a comment:
constraint-set.dtd, created Monday, May 20, 2002.
Defines the syntax of a constraint-set specification XML document.
$Id: constraint-set.dtd,v 1.3 2002/08/16 05:13:04 jim Exp $
The stuff on the last line enclosed between
$ signs is just a CVS
ID, information automatically provided by the source-control system I use, identifying
the version of the file and the time it was last committed. You'll see them
in all of the source files. The real meat of the file begins on the next line:
<!ELEMENT constraint-set (constrain*)>
This states that the constraint-set document contains zero or more elements
of type
constrain (which has yet to be defined). Because there
is no corresponding
ATTLIST directive for
this element has no attributes, only the nested elements.
Before we go on to pin down what exactly goes into a
element, we pause to declare an entity that will make the file more readable.
You can think of an entity as a macro; wherever we use it later in the file,
it gets expanded into the value defined for it. Our entity lists the valid attribute
names you can use with a constraint:
<!ENTITY % attributeName "(left | horizontalCenter | right | width |
top | verticalCenter | bottom | height)">
Each of these attribute names is an element that will also be defined later. (Remember that there are two different meanings of "attribute" that are relevant here: positional attributes of components used in laying them out, and the XML syntax notion of an attribute associated with an element in the document. This is talking about the layout kind.) First, here's where we use them:
<!ELEMENT constrain ((%attributeName;)+)>
<!ATTLIST constrain
name CDATA #REQUIRED
This is the promised definition of the
constrain element. It states
that this element contains at least one and possibly many nested elements, which
are chosen from the set defined by the
attributeName entity. It
also has a mandatory
name attribute (of the XML sort). This is
getting a little dangerously abstract; let's look at an example of what this
means, to bring it back to Earth (even though we've not yet defined the details
of any of the
attributeName elements themselves yet). From the
XML used in Example 2, here's the
constraint for the
title component:
<constrain name="title">
<toAttribute reference="_container" attribute="top" offset="10"/>
<toAttribute reference="_container" attribute="horizontalCenter"/>
Ignoring for the moment the contents of the
top and
elements, this reflects the structure mandated by the DTD: the
element has a
name attribute with the value
It contains two nested elements,
top and
both of which are taken from the list defined by
The DTD lets the parser enforce this structure without us writing Java code
to test for it.
I briefly toyed with the idea of making the DTD enforce even more structure: because of the way
RelativeLayout works, a constrained component needs to have
between two and four constraints. It must have either one or two constraints
on each of the two axes. If you constrain anything other than width
or height, that's enough for the corresponding axis, because the width or height
can come from the component's preferred size. I soon realized that this would
make for an incredibly complicated DTD, and doubted I could get it right. So
I left the DTD loose in this respect, and let the code already in
ComponentSpecifications take care of enforcing these complex
So, back to the DTD. The next section sets up another entity we'll use in several
places to stand for the various types of constraints supported by
If you ever create a new implementation of the
Constrain interface,
you'll need to add its name to this list, and then define the structure of its
element later in the file:
<!-- These are the currently-known constraint types. They're used in all of the
attribute definitions. -->
<!ENTITY % constraintType "(toAttribute | toAxis)">
As it stands, this supports the two kinds of constraints that are built in
RelativeLayout. Wherever a
constraintType is found, it can either
toAttribute or
The next section of the file is where the constraint types are used. It elaborates
on all of the layout attributes that were introduced in our first entity,
<!ELEMENT left (%constraintType;)>
<!ELEMENT top (%constraintType;)>
<!ELEMENT horizontalCenter (%constraintType;)>
<!ELEMENT verticalCenter (%constraintType;)>
<!ELEMENT right (%constraintType;)>
<!ELEMENT bottom (%constraintType;)>
<!ELEMENT width (%constraintType;)>
<!ELEMENT height (%constraintType;)>
This is pretty repetitive, because each component attribute supports the same
kinds of constraints, either
toAttribute or
Using the
constraintType entity at least saved us from listing
both of them each time (and gives us a single place to add a new one if and
when we extend
RelativeLayout). If you look back at the constraint document
snippet, you can see examples of the
horizontalCenter elements being used (each chose
for its nested
constraintType). Also note that none of these elements supports
any (XML) attributes, only the single nested element.
Hang on, we're getting to the home stretch! The only thing left to define is
the two elements that make up constraint types. The first is for
<!ELEMENT toAttribute (reference*)>
<!ATTLIST toAttribute
reference CDATA #IMPLIED
attribute CDATA #REQUIRED
offset CDATA #IMPLIED
toAttribute element can have zero or more nested
elements (the components whose attributes this constraint is anchored against;
the structure of this element is defined at the end of the file), or this information
can be supplied as the content of the optional
reference XML attribute
string. (The DTD doesn't enforce that one or the other must be present, it's
up to
XmlConstraintBuilder to do that in
Java code.) There is also a mandatory XML attribute named (confusingly enough)
attribute, which specifies the name of the component attribute being
anchored against. Finally, there is an optional XML attribute
which specifies how much to add to or subtract from the anchor value. Hopefully,
some concrete examples will clarify this dizzying abstraction again. These are
all valid, and the last two are equivalent:
<toAttribute reference="_container" attribute="top" offset="10"/>
<toAttribute reference="address,phone,email" attribute="left" offset="5"/>
<toAttribute attribute="left" offset="5">
<reference name="address"/>
<reference name="phone"/>
<reference name="email"/>
By using
CDATA for the attribute values, I'm allowing any old
string inside the quotation marks. Again, it's up to
to do some of the semantic validation here. The definition for the
constraint type is similar but a little simpler:
<!ELEMENT toAxis EMPTY>
<!ATTLIST toAxis
reference CDATA #REQUIRED
axis (horizontal | vertical) #REQUIRED
fraction CDATA #REQUIRED
toAxis element contains no nested elements, and three mandatory
XML attributes. The
reference attribute is just like the one we
used before, while
axis is specified to always contain either
"vertical". Finally,
fraction can contain
any old string, but
XmlConstraintBuilder will make sure it's a
floating point number and interpret it as a position along the specified axis.
An example of a valid element, as specified by this part of the DTD, is this
one from Example 3:
<toAxis reference="sample" axis="horizontal" fraction="0.5"/>
Finally, we need to define the
reference element that can be nested
inside of
toAttribute. This is even simpler.
<!ELEMENT reference EMPTY>
<!ATTLIST reference
name CDATA #REQUIRED
This element has no nested elements and supports a single attribute,
which contains a string. This is consistent with the example above.
So, was this all worth it? Having the DTD enforce this structure on the XML
document certainly made
XmlConstraintBuilder easier to write; I
could be sure that if the XML parsed without error, it would be easy to walk
through it, knowing what to expect at each level. It's time to look at how that
By taking advantage of the power of JDOM and
letting the DTD enforce the structural details of a constraint-set
specification, I was able to support XML-based configuration of
without writing much code. Working upwards from the bottom of the
source file, the public
addConstraints() method uses JDOM to parse
the supplied configuration file using our DTD, and then calls the protected
addConstraints() method to walk through the parsed file, the
structure of which we now trust.
All the internal
addConstraints() method needs to do is iterate
over the
constraint elements in the file (they're guaranteed to
be the only children of the root element). For each constraint element, we pick
off the component name and iterate over its children, each of which represents
a constraint on that component, which we process by passing it to
This method picks apart the constraint details, taking advantage of the factory
methods in the type-safe enumerations to translate strings
found in the XML to the
AttributeType and
instances they represent.
This process could be made even more general
by using a configuration file to map constraint types to class names and using
reflection to create them, but this would be complicated by the fact that different
types use different sets of parameters -- to really make it work cleanly, we'd
want to move this responsibility to each
Constraint implementation.
A clean way to do this would be to require each
Constraint implementation
to provide a constructor that accepts the JDOM element containing its parsed
XML parameters. With just two types, it wasn't worth it (actually, more to the
point, I'd already written the constraint classes before I thought of supporting
XML configuration). Although I'm getting a little ahead of myself, I will point
out that this might be an interesting way to improve
getReferences() method is a helper that collects the names
of anchor components that were supplied for a
toAttribute constraint,
handling both nested
reference elements and the (comma-delimited)
value of a
reference attribute, both of which are permitted by
the DTD.
Although this pretty much covers the work of this class, there is one more
detail worth explaining. The constructor sets up an
for our parser. This is to work around a subtle issue that comes up when dealing
with XML validation. All constraint set documents start out with a document-type directive that tells the parser how to validate them:
<?xml version="1.0"?>
<!DOCTYPE constraint-set
PUBLIC "-//Brunch Boy Design//RelativeLayout Constraint Set DTD 1.0//EN"
The declaration provides an address at which the DTD can be downloaded over
the Web (and I've actually made it available there, so people working with smart
XML editors can take advantage of it, to enable code-completion and the like).
But what if you're trying to use
RelativeLayout on a system that isn't connected
to the Internet? It would be annoying if the XML parser failed because it couldn't
access the DTD. That's where the
EntityResolver comes into play.
It is a mechanism JDOM can use to locate documents needed during XML parsing.
We've set it up so that when JDOM tries to load the DTD, our resolver recognizes
the public identifier, and feeds JDOM a copy of the DTD that's built into the
RelativeLayout distribution. Not only does this eliminate the need for an active
Internet connection, it improves performance, since the parser doesn't need to
wait for the document to come over a network interface.
Finally, an inner class,
ParseException, is used to shield callers
from the various detailed exceptions that can occur in working with the XML.
Callers that actually care about such details can probe the underlying exception
(this is structured to be forward-compatible with the exception-chaining mechanism
built into Java SDK 1.4).
While working on
RelativeLayout (and on this article), I noticed some things
that could work better or be fancier, but I somehow managed to resist adding
such bells and whistles in order to get it finished enough to share with people.
I'll point out some of the possibilities in case you happen to be looking for
a small project with which to practice Java, learn more about how layout managers work,
or just entertain yourself. If you do tackle any, please let me know! Maybe
your improvements can be incorporated into a future release of
I've already mentioned one area of opportunity -- the modular nature of the
interface makes it possible to come up with new ways to set up relationships
between components. If you find a situation where
AttributeConstraint aren't expressive enough to capture a design
you're working on, see if you can fit your idea into the
interface and build a new implementation. Once you get your constraint working,
don't forget to update the DTD and
to support it. You'll need to come up with your own XML structure that represents
your constraint in an intuitive way and then figure out how to parse it. What
If you do this, I'd also encourage you to think about improving the encapsulation of the way individual constraint parameters are parsed, by moving this responsibility to the constraint implementations themselves, as I suggested earlier.
AxisConstraint over Multiple Anchors
If you don't want to come up with an entirely new kind of constraint, a smaller
project would be to enhance
AxisConstraint so that it supports
bounding boxes the way
AttributeConstraint does. In other words,
it would allow you to specify more than one anchor component, figure out the
smallest box that would enclose all of the anchors, and allow you to pick a position
along the axis of that box. This change would affect
part of the XML DTD and builder as well, making them even more similar to
As things stand, there are two ways to supply constraints to
create them manually and pass them individually to
addConstraint() method, or create them through an XML file. In
either case, this is a separate operation from adding the components themselves
to their container -- all that's supplied to the container's
method is the component itself and the logical name that will be used to bind
it to constraints.
The layout manager interface allows you to pass in an arbitrary constraints
object, which could encapsulate both the component's logical name and the entire
list of constraints associated with it. In fact, if you look at the JavaDoc
addLayoutComponent(Component, Object)
method, you'll see that I was starting along the path of implementing support
for this approach, but I never got around to doing it because the XML file turned
out to be more convenient for me.
Still, there might be some value in finishing this off. You'd need to define
a class, perhaps called
ComponentConstraints, that would encapsulate
the logical name of a component, and a
Collection of the actual
Constraint implementations for that component. The constructor
could set the component name and there could be a variant that accepted an initial
Collection of
Constraints, but you'd probably also
want a method to add
Constraints individually after construction.
Once the constraints were all set up this way, you could add the component to
the container and register its constraints in a single operation by calling
the container's
add(Component, Object) method.
I hope you've found this dissection informative. It was certainly a fun exercise
to put
RelativeLayout together. Thanks are due to Marc Loy and Matthew Keene
for providing helpful feedback on this article. And if you've not done so already,
please take a look at the origins
discussion in the first article to see where my inspiration came from. Finally,
if you come up with interesting uses for this layout manager, or extend it in
new directions (whether or not they correspond to the ideas I proposed above),
I would love to hear about it.
James Elliott is a senior software engineer at Singlewire Software, with fifteen years' professional experience as a systems developer.
Return to ONJava.com.
Copyright © 2009 O'Reilly Media, Inc.


text:
Check Out
Items in cart: 0 Sub Total: $0
The carving wood we offer is surfaced on all 4 sides. The 2" thick & 3" thick stock is 1/4" less in thickness and width than stated sizes. Example: A 3" x 6" x 24" is finished at 2 3/4" thick x 5 3/4" wide x 24" long.
The 4" stock is 1/2" less in thickness and width. Example: A 4" x 6" x 24" is finished at 3 1/2" thick x 5 1/2" wide x 24" long.
We ship exclusively with UPS and need a physical address, not a P.O. Box for shipping. Alaska,
Hawaii & out of country orders will ship USPO.
printed shipping rates are no longer accurate. Until further notice we will be charging actual shipping
costs that are assessed us by UPS. If you need to know the actual shipping cost before we send out
your order please let us know in the 'COMMENTS' area on the check out process and we will contact you
for approval before your order is shipped.
All six foot Diamond
Willow is considered "Oversized" by UPS, and is charged oversized rates. We charge actual
rates that are assessed us by UPS for six foot Diamond Willow. You can e-mail or call us
at (218) 256-8094 for actual shipping price.
Phone: (218) 256-8094
Email: firstname.lastname@example.com


text:
Candle cause of Wis. fire that killed 3 children
Authorities say a candle in a bathroom apparently caused a Racine house fire last week that killed three children and injured a fourth.
Racine police released that update Monday.
Eight-year-old Dalijah Scott and 9-year-old Dayja Scott died Thursday when their house caught fire. Their brother, 7-year-old Michael Scott, died later in the hospital.
The children's 5-year-old brother, Luther Patterson, was hospitalized.
Authorities on Monday also released audio from the 911 call from the children's mother.
In the 911 call, Deborah Scott tells the dispatcher, "Someone come get my kids. My house is on fire. They are crying like crazy. I cannot get my kids out."
The Journal Times reports Scott said she could see flames but that the window where the children were located doesn't open.
Copyright 2012 by The Associated Press. All Rights Reserved. This material may not be published, broadcast, rewritten or redistributed.


text:
Terry M. Vinch, 25, of Ogdensburg
Funeral services for Terry M. Vinch, age 25 of Ogdensburg, will be held on Saturday (Jan 19, 2013) at 5:00pm at the Fox & Murray Funeral Home with Lay Reader Larry Caufield officiating.
Calling hours will also be held on Saturday from 12:00noon until the time of the service at the funeral home. Terry died Tuesday (Jan 15, 2013) at Claxton Hepburn Medical Center.
Surviving is his mother Charlene Romano of Ogdensburg; two brothers Anthony Romano of Tampa, FL and Angelo Vinch of Fayetteville, NY; two sisters Sara Vinch Duvall of Lisbon & Tammy Vinch of Ogdensburg; grandmothers Rose Trotter and Marie Vinch both of Ogdensburg; uncles Timothy Vinch & his wife Carrie, Frank Trotter, Scott Trotter & his wife Cindy of Ogdensburg and Peter Trotter & his wife JoAnn of PA; an aunt Darlene Richer of Syracuse; niece Adrianna Vinch of Lisbon; nephews Jorden Brashaw of Ogdensburg, Gionnie & Nicholas Romano of Tampa, FL and Dillion Binion of Ogdensburg; cousins Jared & Anthony Vinch and Arron Trotter all of Ogdensburg,.
His father Terry Vinch, an infant sister, Anita Rose Dalmage and two grandfathers, Myers Trotter & Chester Vinch, predeceased him.
Terry was born on May 14, 1987 in Ogdensburg, NY a son of Terry A. & Charlene (Conroy) Vinch. His career began at VIP Construction Service in Florida building homes with his brother for a few years. He then relocated back to the North Country and became employed at Cerebral Palsy of Northern NY where he worked for a period until transferring to the Ogdensburg Price Chopper bakery department.
He enjoyed playing sports with his friends especially volleyball, swimming, football and was an avid San Francisco 49ers fan. Terry was a very devoted friend who loved life and being there for others.
Memorial contributions can be made to the St. Lawrence Valley SPCA ; 6718 SH 68; Ogdensburg , NY 13669 . Condolences can also be shared at www.foxandmurrayfuneralhome.com.


text:
its funny how now that the knicks have the possibility of signing two max free agents (and thus making the possibility of signing james likelier) has suddenly sent fans of other teams in fear of their teams star players leaving those teams to come to the mecca.
I'm not gonna act like i liked the trade at first, but the fact that these dickheads take the time to start accounts here when they are not fans of this team after the trade was complete, is clearly an indication of fear for the inevitable.that gives me confidence that this team will be legit next season.
to those fans, there is nothing to worry about though, we all know that giving a **** about basketball was new to all of you.
raptor fans can go back to butt ****ing snow men in the tundra, cavs fans can go back to watching paint dry, and net fans can stay where they are, irrelevant.
You should have been smart enough to like the trade right away.
It is like doubling down on 11.
A risk, but a do brainer.
Giving up one 1st round pick in 2012 is like not hitting on 20.
We gave up nothing unless someone thought Hill is to be a very good NBA player. ( a mistake of drafting him could not be taken back).
I would have traded Hill for Sergio straight up just to have Duhon not play.
Assuming T-Mac plays the way he did last night what is a better way to go assuming we could sign lee and McGrady for the 10 and 7 mill.
whats the better team
Last edited by skisloper; Feb 21, 2010 at 18:23. Reason: typo's
How could anyone be a fan of the Toronto Raptors . Any good players they ever have never stay who ****ing wants to live half the year in Canada...
From 2002-2003 the New Jersey Nets went to the NBA finals.
Eddie Griffin(bum), Nenad Kristic(bum), Zoran Planinic?, Viktor Khyrapa? Antonie Wright(bum), Josh Boone(bum), Marcus Williams(bum)............and those are just first rounders, i didnt even bring up second rounders. Other then Brook Lopez and a couple other you guys are terrible at drafting.....nice try buddy
DaTPRiNCE...That EGYPTiAN Fella, #MeloMafia
Nate Robinson, David Lee(allstar) and Martin and Jefferson aint on the team no more, and i said most of your draft picks hae been ****ty, of course you guys came across some good ones but 9 out of the 10 have been ****ty draft picks you cant argue that point
DaTPRiNCE...That EGYPTiAN Fella, #MeloMafia


text:
"I found Catholic Answers Live, and was engaged immediately. 'Hooked' is the right word. I was astounded at the things I had mis-learned. God bless you and I hope you never go off the air."
~ Susan, Cincinnati, OH
0 results sorted by popularity
"The Church has always taken great care that no one should be compelled against his will to embrace the Catholic Faith, because, as Augustine wisely declares: 'except he be willing, man cannot believe'."
~ Leo XIII in his encyclical Immortale Dei (November 1, 1885) quoting Augustine of Hippo, as detailed in the article Religious Toleration


text:
The Geography Blog focusing on all things geography: human, physical, technical, space, news, and geopolitics. Also known as Geographic Travels with Catholicgauze! Written by a former National Geographic employee who also proudly served in Iraq and Afghanistan.
Tuesday, April 14, 2009
People's Mujahedin of Iran
The group People's Mujahedin of Iran (MEK) can be consider the prime example of Middle East weirdness and a strong lesson on the value of choosing friends wisely. The group right now is in international legal limbo stuck between the United States, the Republic of Iraq, and the Islamic Republic of Iran.
MEK is a weird combination of Communism, Islamism, North Korean-style personality cult, and dominated by female leadership. The group started off as an anti-monarchist organization in Iran. It quickly turned to terrorist actions including the assassination of several American military attaches. After the fall of the Shah, MEK tried to wage war against before Iranian republicans and Islamists. MEK lost, but not before they managed to take out the chief justice, president, and prime minister of the new Islamic Republic. Iran has never forgiven MEK.
MEK, being led by intelligentsia, fled to France and mixed in with the rest of the educated Persian community. MEK continued to plot attacks against Iran. However, the Iranian-proxy force Lebanese Hezbollah managed to kidnap several French citizens. In exchange for their citizens, French Prime Minister Jacques Chirac agreed to exile MEK for the hostages release.
MEK, an Iranian-Communist-Shia-Personality Cult, then made an alliance with Iraqi President Saddam Hussein, an Iraqi-National Socialist-Sunni-Personality Cultist. MEK helped Saddam win some of the final battles of the Iraq-Iran War and crush the Shia/Kurd revolt of 1991. The Shia and Kurds have not forgotten this. Meanwhile, their support of Saddam has cost MEK significant support from anti-mullah Iranians.
The 1990s and 2000s have been ones of setbacks for MEK. Most Western nations declared MEK a terrorist group in an effort to rebuild relations with Iran and their main sponsor Saddam lost power in the Coalition invasion. MEK was under the custody of the United States until early 2009 when their detainment camps were transferred over to Iraqi control.
Today MEK is in a full scale publicity campaign that can be best described as "please don't turn us over to the Iranian to be tortured and killed." The Iranian government is promising aid to the Iraqis in exchange for MEK but Baghdad wants Iran to end its funding of various insurgent groups. The Shia and Kurds hate MEK for 1991 while the Sunnis do not like MEK because they are Persians. A major success for MEK was having the European Union delist them as a terrorist group. Right now MEK front groups like National Council of Resistance of Iran is competing for President Obama's attention. Besides a busy schedule, NCRI also has to worry about Obama listening to pro-regime elements who wish to keep MEK on the terrorist list.
One may be conflicted about MEK. They are anti-mullah and wish (at least publicly) for a pluralistic Iran but they have long been involved in terrorism. An Iraqi who I asked summed up everything I was thinking about when it came to MEK. He looked down, shook his head, and walked away.
4 comments:
MEK is a weird combination of Communism, Islamism, North Korean-style personality cult, and dominated by female leadership.Sounds like an American Jew's wet dream for regime change in Iran.
- Catholicgauze said...
I feel sorry for you. Perhaps you should get to know some Jews before you start believing Ancient Christian/Nazi/Communist/Racist/Islamist lies about them.
Until then I leave you with St. Paul's words, "there is faith, hope, and love. Love is the most important."
- Ali said...
Please, I read the Wall Street Journal, and see people reading the New York Post in the morning. Most Americans, and especially American Jews want to see Iran a castrated nation.
- Eddie said...
In "The Ayatollah Begs To Differ", the author relates "... the fact that the group allied itself with the hated Saddam Hussein---an Arab tyrant who, unprovoked, rained Scud missiles on Tehran and whose soldiers massacred untold hundreds of thousands of Iranians-- and then actually fought on the Iraqi side during the long war, is an unforgivable crime in the minds of most."
He goes on to observe that even Iranians staunchly opposed to the regime are aware the MEK leaders were allies of Khomeni in the Revolution and only turned against the Iranian regime when they were left out of power by the clerics.


text:
My son is now 10.5months old. I am back to working part time (which I have been). He is reverse nursing and has been for quite some time. When I had him in private daycare; She would give him sippy cup of water due to him refusing the breast milk in any container and he does not take formula. She moved away and now I have him in a center. They rarely offer him water and of course he refuses every bottle I send.
What are your thoughts on starting him on cow's milk and seeing if he will take that from a sippy cup? I hate the thought of him going all day with nothing to drink. He eats cottage cheese in addition to other chesse and yogurt . He has shown no signs of allergies to any foods and eats anything put before him.
So any thoughts or suggestions are appreciated.


text:
Yacht Caps
Yacht caps have been a vital part of our business for years considering our locations in Annapolis and Baltimore. Our Annapolis, Fells Point, and Harbor Place shops are located just steps away from the beautiful Chesapeake Bay. We literally have thousand of boaters and captains walking in ever year whether they are on vacation or on a sailing trip. Our yacht cap and boating hat collection features some of our best selling syles in our shops. These caps and hats are sure to give you fair winds and following seas
There are no products matching the selection.


text:
Expert Q & A Answers About the Pill
How good is the Pill at preventing pregnancy?
My girlfriend is on the Pill and we use condoms...but the last time we had sex, the condom came off. It was 13 days before she expects her period. Is it possible for her to get pregnant because the condom slipped off? Should we get the "morning after" pill?


text:
New here....long time Smoke fan
Greetings from lovely (and cold!) Akron, Ohio. I've been a fan of Tony's for a long time and thought I would join the party. I am old enough to know better but young enough not to care. I am married with 2 kids who are also Stewart fans. My husband is a long time NASCAR junkie and claims not to have a favorite driver. Hated to see Tony in The Big One last week but glad he and all the drivers were ok. Hope they can turn it around for Charlotte!


text:
Featured stories: the impact of our research
- Developing wireless ultrasonic sensors for fast detection of defects 25 November 2016 Inductosense, a University spin-out company, is developing compact, wireless sensors that provide fast, repeatable data regarding the integrity of structures.
- Making 'snow' greener 26 August 2016 Reducing the environmental impact of artificial snow through a partnership between Chemistry and Snow Business.
- Defining Poverty in the 21st century 13 July 2016 Setting the gold standard in poverty measurement, providing policy makers with current, impartial, accurate and reliable scientific evidence.
- Changing the way domestic abuse is policed and tracked 27 May 2016 In March 2014 the new Domestic Violence Disclosure Scheme, more commonly known as 'Clare's law', was rolled out by police forces across England and Wales.
- A better way to evaluate schools 8 April 2016 Value-added measures of performance look beyond basic school exam results.
- IRIS training helps victims of domestic abuse 18 March 2016 Training and support programme IRIS enables GPs to identify patients affected by domestic violence and abuse and refer them to specialist services, benefiting the patient and saving NHS resources.
- Using ultrasound waves to put feeling into touchless interfaces 11 December 2015 A novel technology that uses ultrasound waves to put feeling into touchless interfaces has applications in consumer electronics, household appliances and the car industry.
- Advising HM Treasury on pension policy 10 December 2015 HM Treasury officials used algorithms created by Dr Edmund Cannon and colleagues to inform government pension policy.
- Rebulding civil participation post conflict 18 November 2015 Academic findings have led national and international organisations to place greater emphasis on civilian capacity building in post-conflict states.
- Reducing damaging vibrations in helicopter rotors 18 November 2015 An award-winning partnership with Helitune has delivered new technology and jobs by solving a long-standing engineering problem.
About our impact stories
Research at the University of Bristol contributes to the University's international reputation, it informs our teaching and it is the basis of our economic and societal role in the region and of our collaborations across the world.
The stories here celebrate the range and depth of this research undertaken at the University and how it impacts on society, on a local, national and international level.
These stories reflect our sustained and evolving research activity, focusing on key projects that are currently active or have recently been completed from each of the University .
More stories from the University
Our public engagement stories delve further into how academic staff around the University are using their research and teaching practices to engage directly with and inspire members of the public.


text:
- Game Details
- News (4)
- Review
- Previews (3)
- Videos (11)
- Images
- Cheats & Walkthroughs
Video Preview
Official E3 Preview of LEGO Batman 2
In the LEGO Batman 2 E3 2012 preview, producer Phillip Ring shows off a few of the new things coming to LEGO Batman 2, including characters like Superman and General Zod, as well as for the first time in a LEGO game, voice acting.
Video Preview
LEGO Batman 2: DC Super Heroes Gameplay Preview
Jonathan Smith, Head of Production at TT Games, talks about the different playable characters in LEGO Batman 2: DC Super Heroes and explains their new "Open World" gameplay mechanic for gamers to explore through the city of Metropolis.
LEGO Batman 2: DC Super Heroes Hands-on Preview -- Lil' Heroes Unite!
The Caped Crusder is back in LEGO form, but this time he's joined by a host of super hero pals. Check out our first hands-on preview to see what other big changes are coming to the world of LEGO Batman.
My X-Play 1000Th Episode PosterLatest Post: Mar 18, 2013 by Smashdrama
I Can't Believe It's Come To This.Latest Post: Mar 18, 2013 by Shadow_ben_jamin
Anime Corner Farewell Tour! March...Latest Post: Mar 18, 2013 by Squeakachu31


text:
"I have been enjoying your program on my local Catholic radio station for many years and can happily give a large amount of the credit for my continuing spiritual growth to your offerings. You snatched up the banner many had laid aside and are marching bravely forward!"
~ Pamela, Portland, Oregon
0 results
Subscribe to Catholic Answers Magazine
"The [secular] sense of right and wrong is so delicate, so fitful, so easily puzzled, obscured, perverted, so subtle in its argumentative methods, so impressionable by education, so biased by pride and passion, so unsteady in its course, that in the struggle for existence amid the various exercises and triumphs of the human intellect, the sense is at once the highest of all teachers yet the least luminous."
~ John Henry Newman, "Letter to the Duke of Norfolk", from the article on Morality by G. H. Joyce.


text:
This is the editing server. Do not link to this page or any page that starts with cmstest.gannon.edu.
📷 Old Main
The M.Ed. is a foundational degree that emphasizes curriculum, instruction and assessment. Graduate students may use the 6 elective M.Ed. credits to begin a pathway to the following Pennsylvania Department of Education Certifications:
The Master of Education in Curriculum and Instruction is a natural pathway to the ESL Certificate. The foundation in curriculum, instruction, and assessment serves to strengthen the candidate's ability to be successful as an ESL teacher, program specialist, and a leader in the field of second language acquisition.
Instruction at Gannon University may simultaneously prepare for National Board for Professional Teaching Standards (NBPTS) Certification.
This unique program is designed to prepare principals as instructional leaders who are able to effectively and ethically bring about continuous school improvements that result in increased student achievement.
Literacy is the key to children's success and provides communication links with society throughout life. The Master of Education degree in Reading and the Reading Specialist Certification Program provide training to become a reading professional who can function collaboratively and in a variety of capacities.
The Reading Specialist Certification Program provides training to become a reading professional who can function collaboratively and in a variety of capacities.
Students pursuing the Master of Education in Curriculum and Instruction can also seek preparation as a Secondary or K-12 certified teacher in the content areas of Biology, English, History/Social Studies, Mathematics, or Spanish.