A simple girl in a complex world




Friday, August 22, 2003


#)(%&*@#)%(&#)(@% Namespaces

So, here's a geek post. I don't do this very often.

I thought I knew XML. I'm a datahead, yeah. With a capital D. But I got thrown for a loop.

I read about namespaces...in many places, no less. I read the W3C stuff. I consulted a Wrox book. I was ready to go. So I constructed my schema, the thought being that I would have a master schema that would define the highest level elements simply and precisely, and secondary files would hold the scullery data elements - those in supporting roles. Okay - simple enough.

The namespaces had other evil ideas.

But, with help of the noble Hans, I have conquered the foe and feel the need to document the correlation between schema documents aligned to do the same thing and how the instance document makes the validation phone call to the proper schema. As far as I can tell, I found NOTHING on the web with the correlation of all of these things in one place. I aim to change that.

Okay - here's the papa schema (papaDog.xsd) - the one that contains the master elements. Copy it into a file of any name to test it. Honor me by keeping the name the same.

<?xml version="1.0" encoding="UTF-8" ?>
     <schema xmlns="http://www.w3.org/2001/XMLSchema"
     xmlns:example="http://angelweaving.blogspot.com/schema" targetNamespace="http://angelweaving.blogspot.com/schema"
     elementFormDefault="qualified" attributeFormDefault="unqualified">

     <include schemaLocation="http://angelweaving.blogspot.com/schema/babyBearSchema.xsd" />

     <element name="topDog" type="example:bigDogExample" />

     <complexType name="bigDogExample">
          <sequence>
               <element name="blah1" type="example:bigDogElement1" />
               <element name="blah2" type="example:bigDogElement2" />
          </sequence>
     </complexType>
</schema>

Fairly simple, no? Okay, the secondary schemas should follow this pattern (this one is named babyBearSchema.xsd). Feel free to copy it into a file with that name to test it.

<?xml version="1.0" encoding="UTF-8" ?>
<schema targetNamespace="http://angelweaving.blogspot.com/schema"
xmlns:example="http://angelweaving.blogspot.com/schema"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
     <complexType name="bigDogElement1">
          <sequence>
               <element name="blech1" type="string" />
               <element name="blech2" type="boolean" />
          </sequence>
     </complexType>

     <simpleType name="bigDogElement2">
          <restriction base="string">
               <maxLength value="27" />
          </restriction>
     </simpleType>
</schema>

Okay - so here are the two schemas. I find this SO non-intuitive as a developer. My simple mind kept trying to put the lower-level schema INTO the upper-level (Papa) schema. You know, like include files. But, no, of course, that's not how it goes. A namespace is like a room. All of my smaller schemas can use the same namespace since, as Hans pointed out, I control them all - so I can stop there from being a naming collision. As you can see, both schema "documents" refer to http://angelweaving.blogspot.com/schema as the reference for the "example" namespace.

Okay, realizing that, you're most of the way there. The next thing to take note of is the xmlns that stands alone. That points to the W3C's schema; this must be in your schema. This is consistent across both documents. The targetNamespace is also http://angelweaving.blogsot.com/schema in my example - both documents.

Last thing to notice: the reference to babyBearSchema.xsd should point to EXACTLY where this schema sits. This is papaDog.xsd that's pointing to it. Without this, no validation for you.

Now, these guys validate. Here's the validator I'm using to validate papaDog.xsd. I have babyBearSchema.xsd sitting in the proper place on my site.

And now, the instance document. Stop, get some popcorn and something to drink.

<?xml version="1.0" ?>
<topDog xmlns="http://angelweaving.blogspot.com/schema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://angelweaving.blogspot.com/schema http://angelweaving.blogspot.com/schema/papaDog.xsd">

     <blah1>
               <blech1>Atomic Dog</blech1>
               <blech2>0</blech2>
     </blah1>
     <blah2>abcdefghijklmnopqrstuvwxy</blah2>
</topDog>

Yeah, they work together quite nicely. Note that the instance document points to the same namespace. The xsi namespace points to the W3C's Schema place. The schemaLocation, though, is the kicker. This, again, is completely non-intuitive to a developer. Note that there are two "parameters" within the opening and closing quotes. WITH A SPACE BETWEEN. Aargh!

The first is our friendly namespace, and the section is the actual location of the schema.

I hope this helps. If you see any errors with this post, please e-mail me at angelweaving@hotmail.com.

And forgive my indentation. Forcing it with HTML workarounds is, well, tiring. Perhaps I'll correct it when I have more time.

hln



Updating the Blogroll

This is long, long overdue (like many of my library books, likely). Please welcome these fine folks to a parked spot on the left-hand side of my humble blog.

hln



In Search of the Instalanche

Okay, strangely enough, calling Instapundit "the Puppy Blender" actually seems to work for Frank J.

I think I'll have to resort to something with a different tack.

I challenge Glenn Reynolds to a game of Boggle, Master Boggle (which sometimes masquerades as Big Boggle). No, silly, not that little grid that's four by four. That's so...lame. I mean the five by five - four letter words and higher.

I'm nearly unbeatable. Get the word out, people.

hln



Only One Problem...

Go West Virginia, go. Good idea. Walking a mile a day? About fifteen minutes - a good start.

    Gov. Bob Wise and health officials unveiled the West Virginia on the Move campaign Thursday.

    The goal is to encourage people to walk about one more mile every day and eat fewer calories. The campaign is similar to an effort in Colorado.

    West Virginia's campaign will include a Web site, billboards and workplace and school programs.

    In 2001, 25.1 percent of West Virginia adults were obese and 37.9 percent were overweight. The national obesity rate was about 21 percent, according to the Centers for Disease Control's 2001 Behavioral Risk Survey.

    People who are obese are more likely to have other health problems, including high blood pressure, diabetes, heart disease and stroke.
The problem?

    West Virginia on the Move will help keep our citizens healthy," Wise said.
I think the problem is the word "keep." That's a whopping 73% of the state's citizens who are overweight.

hln



  

Thursday, August 21, 2003


Wrath of the Dog Napkin

And so Big Arm Woman, whom I've been reading since I discovered blogs, posts this witty little thing about fake poetry, essentially. And I think to myself, reading her poem (which I'll post in its entirety here...)

    Misery Mine

    The day is done,
    And no one knows
    Just why the dog
    Ate my mother's toes.

    We sit at night,
    encased in woes,
    My mom thinks life
    totally blows.

    She cannot run,
    her walking slows,
    stupid dog.
    Missing toes.

    -Freemont E Hall

What a riot! Read her whole post. But read the rest o' mine first.

About eight years ago, I was submitting a lot of poetry here and there. There was this literary magazine (this may be a stretch) called Evil Dog. My friend Jason Reasoner was visiting, and we decided (under influence of only silliness) to pander to the publication in hopes of having something ludicrously silly published.

Alas, we never heard from Evil Dog. But I have this lovely piece of obnoxious poetry to show for the effort. I'll share. Eight years later, I still crack up.

apocrophant
---------------------------------------------------------

the anytime everybody is always
an odd being. but i feel like
tomorrow today, outside
of now. into this frayed
stale silence (which doesn't
make blended friends; it keeps
them in cupboards) to fetch
poor bones for an evildog napkin
this night. smooch. it ain't
gonna rain no more.

sidereal scorpions (in waiting)
wait for my fingered dog barks
before it bites and steal my
cereal alibi in a six year
old clown suit selling sex
to my earlobes' shampooed
carpet. heidi, do you see
the tornado without my tomato
slaves? the vacuum calls,
anon. suckled nectar from
the cupboard womb named.

in the hourglass the tides mash lentils --
friends of little faith. damned by cub
board handles -- wrath of the dog napkin;

remember waco and repent.

I think it's the "smooch" and the "tomato slaves" that get me every time. Perhaps the lentils.

hln



Heather Begs (Gently)

In two short weeks (yes, indeed), I will ride my first MS 150. I have probably mentioned that "ride" is a strange word for pedal-powering a bicycle for long distances, but ride I shall.

The MS in MS 150 stands for multiple sclerosis. This is one terrible disease. When I was growing up in small Sandusky, Michigan, I lived across the street from the middle school principal. His wife suffered from multiple sclerosis. I believe at that time she was the same age as I am now. She was often too exhausted to transport herself, opting instead to use a yellow motorized wheechair of sorts to move her instead. The couple had a very young son, too.

The MS 150 raises lots of money each year to combat the disease; still, it remains among us uncured.

If you have a few spare dollars ($3.00 is 2 cents a mile; $6.00 is 4), please consider sponsoring me for my efforts for this ride. It's simple to do. Here's how.

Option 1: Go to http://https://www.nationalmssociety.org/pledge/index.asp. Type Heather into the first name box and the lovely surname "Noggle" into the last name box. Choose Missouri as the state. Submit the web form. Click on the link that bears my name when it appears. Sponsor.

Option 2: Click the "Sponsor me" link on this weblog. Click through the certificate info, and then enter your pledge.

I thank you in advance.

hln



Senioritis - Takin' It To Court

Yes, really. Our friends at Overlawyered have a doozy this evening.

Almost full text:

    "Senioritis" victim sues for college admission

    Hillsborough, N.C.: "A Guilford County high school graduate who recorded a perfect SAT score is suing UNC Chapel Hill, alleging the school refused to admit him after his grade point average dropped. Mark Edmonson, a National Merit Scholarship finalist, scored a perfect 1,600 on his SAT last year, but his grade point average fell from 3.8 to 3.5 in his senior year at Northwest Guilford High School. ... 'His senior year grades are C's, D's and F's,' Ziko said [Thomas Ziko, a lawyer for the state]." ("Student who aced SAT sues UNC for denying entry", Charlotte Observer, Aug. 20). An earlier acceptance letter from UNC had said, "We expect you to continue to achieve at the same level that enabled us to provide this offer of admission". Edmonson's family is beginning to talk about how the university didn't sufficiently take into account the consequences of his having a disability, attention-deficit disorder (Eric Ferreri, "UNC admission rescission sparks suit", Durham Herald-Sun, Aug. 19) (via "Begging to Differ", Aug. 21; Kimberly Swygert at No. 2 Pencil also comments (Aug. 21)).
I want more. You? Here's the Charlotte Observer link Walter at Overlawyered mentions.

    Edmonson said in an affidavit filed in Orange County that university officials backed out of an April letter promising that as long as Edmonson graduated from Northwest, he would be admitted.
Eek - this one could get ugly.

hln



A Fitness Contract

If your kids are parked more than moving, Health - HeathDay recommends that you draw up a fitness contract to unpark them.

This article is barely more than that. One good thing:

    Make two sets of lists: One should detail what each of you plans to do in this program, the other outlines what you expect to gain.
Novel concept - the parent has to contribute to benefit the kid. And, no monetary goals, please. After all, we all know (thanks to snazzy reporting this week) that bored kids with too much money are predisposed to drug use (gag).

hln



Ryan's Posting!

My coworker Ryan is updating his weblog regularly. You should check him out.

Now, if only Bryce would do the same? I just might link to him ;)

hln



  

Wednesday, August 20, 2003


Responsibility

I'm usually not one of the Bill Whittle raving mad fans; often I won't read a published essay for a few weeks, but this one was a must-read on the day it came out.

It's called Responsibility.

It's also my favorite topic. Bill does it justice.

hln



  

Tuesday, August 19, 2003


Because He Says it Better Than I Could

I shall defer to Michael Williams of Master of None who talks about the bombing of the UN Headquarters in Iraq.

This was, of course, not the only bombing today.

This saddens me. I cannot explain it, and I cannot talk rationally about it, so I will simply shake my head, mutter innate depravity, and fail to understand.

hln



  

Monday, August 18, 2003


Self-Actualizing Quentin

I posted about this before. Quentin is the dog who escaped his date with death by defying the dog pound's gas chamber. He was placed with Stray Rescue of St. Louis, and the director of this organization eventually adopted the dog.

This has raised the ire (probably because he has nothing else to write about) of Kevin Horrigan, St. Louis Post-Dispatch columnist. The article is here.

Now, sampling Kevin's obra.

    I really hate to bring this up, what with the general jubilation over the happy non-ending for Quentin, the Miracle Dog, but is it really right that Quentin will spend the rest of his life as a public relations dog?
Okay. Whoa. Morals and animals, oh my, oh my. Is it "right" to put healthy animals to sleep simply because society doesn't have the sense to spay/neuter its pets? Wow, I don't think I want to go there. Next point.

    This is where Quentin's role as a PR-dog comes in. An organization called In Defense of Animals has hired him, for the cost of a $5,000 donation to the city pound, as a national spokesdog for the plight of stray animals. The money will be used to help hire a full-time veterinarian who can administer lethal injections at the pound.

    Two observations about that: One, unless the city can find a vet who works a lot cheaper than mine does, $5,000 isn't going to go very far. And two, what an awful job: "How'd your day go today, honey?" "Great, I killed 38 dogs." Quentin's new companion-human is Randy Grim, the founder of the Stray Rescue of St. Louis shelter, a man who pops Xanax for anxiety disorders but who has become a kind of Mother Teresa for stray animals. Quentin's new role will be as a celebrity, making public appearances around the country to raise money and awareness - a canine version of Fergie, the ex-Duchess of York.
Let's see. This is a DOG. I'm sure he's going to hate lots of attention from awestruck people who want to pet him and give him treats. Sure, 5k isn't much. But, last I checked, it's $4,999.99 more than a penny, which is a cent more than nothing.

And then there's that little matter of the ad hominem. SMEAR Randy Grim! Why? Because I can, says Horrigan. That man's job would make ME pop Xanax, too - so much heartbreak with unwanted animals.

And then comes the self-actualization part.

    Under the theory of dog fulfillment, tracking dogs like beagles or hounds should go to tracking classes, Labrador retrievers should be furnished with water and ducks, and French poodles should be furnished with a nice Bordeaux. Quentin is a Basenji mix, descended from African hunting dogs, so he should be taken out in the woods to hunt warthogs.
Geez. What next? Should my cats be given live mice in a controlled room with a dirt floor at least three times a week? I think they're faring just fine.

Maslow (and Pavlov) are turning over in their graves.

Mr. Horrigan - I'm certain, though I can't properly anthropomorphize a dog (doubtful you can either), that Quentin would choose life and petting over death and another gassing? You wanna try again with a new column?

hln



Is There a Circle of Hell for Stupidity?

No words. Sorry. Story says it all.

    NEW ORLEANS, Louisiana (AP) -- A Marine received 14 months in a military brig for using a military credit card for an unauthorized six-figure shopping spree that included a car, a motorcycle and breast enhancement surgery.
No, wait. I break my vow of silence. WHAT WERE YOU THINKING?

hln



The Berkshire Grill, Bridgeton, MO

Yes, this is a restaurant review. The Berkshire Grill was one of my favorite restaurants for a long time. It's located close to my home, sports a wide variety of food, employs an actual chef who features different specials for a time frame (perhaps a month - not certain), and, at one time, its service was overwhelmingly better than other restaurants of its type and price range (Applebee's, Ruby Tuesday, Red Lobster, Olive Garden - you get the idea). This was a "celebrate birthday and other occasions" restaurant.

And then the ownership changed.

This was less than a year ago, but I'm not certain of the exact date. The only reason I know of the ownership change was that Brian and I visited before the new owners had received their liquor license. Servers were warning all patrons of the lack of alcohol that evening.

I have three incidents, and, well, you know the rule of strike three. Here they are. I figure this is more effective than a simple letter to the management. I don't plan to go back for a few months.

Incident 1: I actually have the date. It was May 22, 2003 - Brian's and my 4th anniversary. I usually order the same dull, boring, but VERY tasty salad, and when the server brought me the dressing, it was woefully unmixed - about 2/3 oil and 1/3 of the good stuff. I asked for a spoon and gave the exact reason - to try to remove the oil from the dressing. Apparently spoons are not normal dining fare at the Berkshire Grill under new ownership; none sat atop my place setting.

The server brought one. I tried for a few minutes, but could not remove a significant enough amount of the oil to make the dressing palatable, and so I asked for more dressing. Usually it's superb, and even my uneducated palate can distinguish crap from superb. He brings me more dressing and has the audacity to say, "Oh, I just had to stir it."

Uh....this is not the mark of a restaurant that distinguishes itself from others because of fantastic service.

Incident #2 - approximately 2 weeks later. My friend Tonya, with whom I try to dine about once a month, and I met at Berkshire on a weekday evening, probably a Wednesday. Same said server dolt decided to feign sweeping other parts of the restaurant during our meal. Everytime he'd find something more interesting to do, he'd prop his broom and dustpan (quite dirty) against some table, and then flee to his other task. This occurred at least three times. Ambiance! Baby!

Incident #3 was last night. I ordered BBQ ribs and specifically stated no cole slaw. I asked for a little bit of extra lettuce on my starter salad instead. (This restaurant has actually done that for me - added more salad in place of a side). Oh, but not this server. Not a big deal that she forgot the lettuce; no big thing. I wasn't going to starve. But, plopped on my plate, with a big old nasty pile of mayonnaise-laden sloppy goo, is this wad of cole slaw. Mom, you're cringing, aren't you. I mean, your head must hurt.

I despise mayonnaise. It's one of the three most disgusting edible/drinkable substances (with mashed potatoes and carbonated beverages rounding out the list). I got no offer of "we'll bring you another plate." Instead, I picked up the blob and put it in my dirty salad bowl, and our server, Shannon, walked away with it.

Now, again, minor irritation. But it's the third time. And, to me, it's more of an irritation than to most. I don't personally ascribe to the "but it all ends up in the same place anyway" theory. BS. I was willing to let it slide in my mind until I noticed that the aforementioned cole slaw had a very runny mayonnaise sauce. Yes, you bet. It was all over my french fries (probably good - those go to my hips), and all over one end of my ribs. I pointed this out. I got a "I'm going to ignore that" look from the server.

So, Berkshire Grill, you've lost a customer (two, actually - Brian) for a while. Perhaps you should hire back those excellent servers whom you've chased off, and read the service manual one more time.

Empty parking lot last night. Give it a month - it'll be emptier.

Those of you from stlbloggers.com - I'd love to know if you feel the same.

hln



Weekend = Blur (in many ways)

Saturday: Near 70 miles in 95+ degree heat in the middle of Illinois. I can't remember much of Saturday after that. Did I do anything? All I remember is intense heat, being slower than every other person, and having to stop to put my poor head between my knees a few minutes before being able to resume the ride. Ewww.

Sunday: Brian returns! Oh, and 24 miles at the Grafton Ferry Ride, where Heather got disgusted while waiting too long for the ferry and made it the Grafton Back-And-Forth-From-The-Beginning-To-The-Ferry-And-Again Ride. Never hurts to improvise.

hln



  

Sunday, August 17, 2003


% Geek

I've seen references to this test on so many blogs that I've forgotten where I most recently saw it. At any rate, I'm 23.4714% - Geek. Just enough to allow me to carry on geek conversations. Phew.

hln