text:
Ambature Announces Issuance of 6 Additional USPTO Patents
Scottsdale, AZ Superconductor Company Receives Patents for A-axis Materials, Enabling More Efficient Transportation and Storage of Electricity
Ambature Announces Issuance of 6 Additional USPTO Patents; Ready to Launch Licensing Programs
Scottsdale, Arizona – September 7, 2016 – Ambature, Inc., the technology leader in proprietary A-axis superconductive materials, today announced it has received notification from the United States Patent and Trademark Office (USPTO) of the issuance of four (4) new patents and the allowance of two (2) additional patents for its core A-axis materials and films made from its A-axis materials, as well as patent issuances in China, Japan, Russia and Taiwan.
"These additional patent grants are a significant milestone in Ambature's history," said Ronald Kelly, CEO of Ambature, Inc. "Our superconductive materials enable more efficient transportation and storage of electricity in a host of existing and new applications. We are now in a position to launch our licensing programs and invite licensees to visit our website to review our portfolio."
Superconductors are the technology behind a number of key industry innovations, including MRI machines, maglev trains, quantum computers, fault current limiters (that protect the electric grid), transformers, generators, motors, power storage and military applications.
A-axis superconductive materials have improved operational characteristics such as increased temperatures, electrical charge, magnetic, mechanical and other properties. Ambature has also recently expanded its patent portfolio to superconductive powders and paints that can be used on irregular surfaces and wire applications.
About Ambature, Inc.
Ambature, Inc. is an Intellectual Property ("IP") licensing firm that has created superconductive materials for approximately 21 families of technical implementations and specific product applications, each family individually addressing multi-billion dollar markets. Ambature has 201 patents issued or pending with over 3,500 identified claims, which represents the largest number of all issued and pending patent claims in the world in the area of superconductivity owned by a single entity. For more information, visit Ambature's website at www.ambature.com or call 480-659-3910 (US).


text:
1957 Volvo Sugga
Here at Industrial Brakes we reline every kind of brake imaginable, including a vast range of vintage & classic brakes. More commonly we see Bentley, Rolls Royce, Jaguar, Daimler, Alvis and Lagonda brake shoes. Recently we had the pleasure of relining a set of brake shoes belonging to this immaculate 1957 Volvo Sugga- a first for us. We just received a call from the proud owner, delighted with the performance our linings offer. He is now sending a few more sets for his other vehicles.
I want one!!

subset: commoncrawl


text:
"For over half a century, the American artist James Turrell has worked directly with light and space to create artworks that engage viewers with the limits and wonder of human perception. ...
Turrell often cites the Parable of Plato's Cave to introduce the notion that we are living in a reality of our own creation, subject to our human sensory limitations as well as contextual and cultural norms. This is evident in Turrell's over eighty Skyspaces, chambers with an aperture in the ceiling open to the sky. The simple act of witnessing the sky from within a Turrell Skyspace, notably at dawn and dusk, reveals how we internally create the colors we see and thus, our perceived reality. ...
Turrell's medium is pure light. He says, 'My work has no object, no image and no focus. With no object, no image and no focus, what are you looking at? You are looking at you looking. What is important to me is to create an experience of wordless thought.'"
Tate Modern: The EY Exhibition: Sonia Delaunay, 15 April – 9 August 2015.
Sonia Delaunay. Hélice, décoration pour le Palais de l'Air, Exposition Internationale des Arts et Techniques, Paris 1937. © Pracusa 2013057. © Skissernas Museum, Lund, Sweden/Emma Krantz.
Project de Tissu Simultané n°25, France, 1924, gouache, donated by Sonia Delaunay 5 June 1966, © Les Arts Décoratifs.
Sonia Delaunay (1885-1979). "Rythme couleur" (1964), oil on canvas, Paris, musée d'Art moderne.
"1989 -1998 A collective of artists, specialising in large scale installation and performance work, usually of a site specific nature."
"Legendary designer Peter Saville says abstract art is part of our everyday lives. From Kasimir Malevich and his Black Square through to contemporary product design, in an exclusive film for BBC Arts Online he makes the argument that modern devices such as iPods owe their shape and feel to pioneers of Abstraction, via the fundamental building blocks of the Bauhaus and Dieter Rams."
Sign-Up or learn more.


text: Baseball Baby Needed 03/04/2016 Well its that time of year again, Spring Training! lol, If you have worked with me before, know me personally or have just stumbled across my blog, there is something everyone should know... I LOVE Baseball! I grew up playing softball, and although my love for it died off around high school, it was eventually rekindled when I met my husband. He is a baseball-aholic. Originally from a small town about an hour from St Louis, he grew up a St Louis Cardinals fan. I grew up here in Charlotte, NC and


text:
There's something about a classic winter coat that just oozes elegance and grace and totally defines your overall style. Whether it's a classic belted camel coat or a statement leopard or shearling—with the right coat, all eyes will be on you. No one knows the power of a bold coat quite like the screen sirens of Hollywood—on or off screen. So when shopping for a winter coat this year, we looked beyond the runway, and to our Netflix queue, for inspiration. From Kate Hudson's over the top hippie shearling coat in Almost Famous to Ali MacGraw's classic wool trench from Love Story; it's the coats that define the characters and the characters that define the coats.
So, just in time for winter shopping (and classic movie insp too!), here are our favorite on-screen moments in outerwear style:
The Birds (1963):
Tippi Hendren may spend the duration of this film running from deadly black crows, but she couldn't have looked more elegant doing so.
The Graduate (1967):
Head-turning as Anne Bancroft's character may be, no matter what she's wearing, Mrs. Robinson's leopard coat represented both sex appeal and sophistication.
Funny Girl (1968):
Hello, gorgeous. This high-collared leopard coat on Barbra Streisand is not only her character's symbol that she finally made it, but it's the chic fashion armor we want for our own everyday lives.
Love Story (1970):
Both youthful and classic, Ali MacGraw's wool trench gives off that '70s collegiate vibe that is so Jenny Cavalleri, and it's come back in a huge way this fall.
Pretty Woman (1990):
Though technically it's a man's blazer, Julia Roberts' oversize blazer is just the thing that we want to wear with everything from jeans in the morning to minidresses at night.
Almost Famous (2000):
If you're on the hunt for a statement coat, channel Kate Hudson's bohemian vibe and look for one with a wide lapel to show off its furry interior.
The Holiday (2006):
Cameron Diaz's character's white, beige, and tan wardrobe in this movie is inspiring (and does she carry around Tide to Go? Not a stain? Anyway...), but her ivory shearling is basically everything.
The Devil Wears Prada (2006):
Though there are countless lust-worthy coats to choose from in this film, Anne Hathaway's belted white coat takes the cake. It's the perfect example of how to make the white work for wintertime.
Sex and the City (2008):
Don't we all wish we had an oversize furry to simply throw on over our pajamas on New Year's Eve—and look just this amazing? Plus, this coat is as signature Carrie as the "Carrie" nameplate necklace itself!
My Week With Marilyn (2011):
In this film, Michelle Williams, as Marilyn Monroe, models the coat that you can wear absolutely anywhere and will never go out of style: the belted camel robe coat. Plus, no one did glam quite like the original bomb bombshell.
For more fall and winter fashion:
23 Ways to Wear Ankle Booties This Fall—No Matter Where You're Headed!
These Are the 7 Most Flattering Pants for Work


text:
Enjoy our tasty array of fresh salads that are full of flavor
A bowl full of taste, colours and nutrition, is what we offer at Little Bean Cafe salad bar, especially for people looking for healthy food alternatives. Whether you want to enjoy your salad during a family dinner at our Cafe or you need to grab a light lunch from our pick-up point or you need to tantalize a dinner party with our services of catering in Campbelltown and other areas, we offer our variety of salads for all occasions.
From weight watchers to taste lovers, we have a flavour for all palates from chicken Caesar salad to Fruit salads. If you are one fish love, then we have certainly something to satisfy your calorie count and taste and that is Tuna or Salmon Salad along with smoke Salmon salad. However, if you are looking for something really less in calories you can relish our Honey Yoghurt available at the salad bar. You can also add your choice of toppings like banana, ice cream, caramel or cream as per your choice. You can not only enjoy our tempting salads during dine-in at our cafe, but we also offer all these salads in our menu during our services of catering in Macarthur and surrounding areas.
Get in Touch
Call Us
(02) 8064 2354
Find Us
K2 & K3 / 11-13 Main Street,
Mount Annan NSW 2567


text:
With your success utmost in our minds, we have developed the XtaLAB Synergy-S diffractometer for single crystal X-ray diffraction. Using a combination of leading-edge components and user-inspired software tied together through a highly parallelized architecture, the XtaLAB Synergy-S produces fast, precise data in an intelligent fashion.
The XtaLAB Synergy-R is a powerful microfocus diffractometer that combines a high flux rotating anode with sensitive HPC detector and other components to allow you to collect high quality diffraction data. Moreover, the XtaLab Synergy-R offers a number of design features that extend the experimental flexibility to address the most challenging samples.


text:
Tutorial: Puzzle Game Basics with HTML5 and Javascript
If you've played many online games, you've probably seen the puzzle simulations where an image is cut up into pieces and randomly arranged. The goal is to click pieces and move them to reform the original image. In this tutorial you will learn the basics of how to create this type of game. If you want to take a sneak peek at the finished product, you can do so here.
After receiving many requests asking how to detect puzzle completion, I am happy to say I've put up a follow up tutorial for doing just that. After completing this tutorial, check out the Puzzle Game Completion tutorial to learn more!
Let's begin by first laying out our html page. The page will be pretty basic. We'll have a single div element, inside of which we'll place an image and our canvas tag.
<!DOCTYPE HTML>   <title>HTML5 Puzzle Game</title>
  <canvas id="myCanvas" width="640" height="480" onclick="onCanvasClick(event);"> </canvas>

No big deal, right? We set up a basic page and added some inline styles to make it look nice...ish. Note that we set up a script block in our head tag, but we haven't added any code there yet. Don't worry, we'll get to that soon enough; but first, let's go over the page layout. As mentioned above, we have just a single div element. This element is centered and given a width of 640 pixels and a height of 480. We also add a border to make the puzzle feel more contained.
If we're going to build a picture puzzle, it might be nice to have a picture to use. I'm a pretty big cat guy, so I went with a kitty picture. You can go use whatever image you want, but I'd recommend using one that is 640x480 for this tutorial because that's what I'll be using. If you want, you can just use the same image I'm using; it's nothing too special, I just did a google image search for cat or something. Get it here. Also, you can use the same sorry image if you don't feel like making your own. Your directory should look like this:
With page setup out of the way, it's time to get coding! We'll begin by setting up a few variables and adding an onload function to run once the page is loaded. After your opening script tag, add the following code.
window.onload = onReady; var can; var ctx; var img; var clickX; var clickY; var selected1; var selected2; var blockSize = 160; var piecesArray = new Array(); function onReady() { can = document.getElementById('myCanvas'); if(navigator.userAgent.toLowerCase().indexOf('firefox') >= 0 || !can.getContext) { can.style.display = 'none'; document.getElementById('sorry').style.display = 'inline'; return; } ctx = can.getContext('2d'); img = new Image(); img.onload = onImage1Load; img.src = "cat.jpg"; }
The first thing we do here is add the onload handler. After that we declare several variables that we'll be using. Most of these variables will be set later on in code, but blockSize and piecesArray are both assigned values here. We set blockSize to 160; this represents the size of our puzzle pieces and 160 divides nicely into both 640 and 480 giving us a total of twelve puzzle pieces. The piecesArray is simply set to a new Array instance. It will later contain our puzzle pieces.
Next we define our onReady function. The first thing we do is grab a reference to our canvas element. The if statement is used to check for proper canvas support in the browser. I've also excluded the Firefox browser because it doesn't support some of the code we will use later on. If the user is browsing with Firefox or using a browser that doesn't support canvas, we hide our canvas display and show them the sorry image.
After checking for proper browser support, we grab a reference to a 2d rendering context from our canvas element. Lastly, we set up our puzzle image, give it an onload handler function and set the src property. Our next step will be writing the onImage1Load function so after the onReady function, add the code below.
function onImage1Load() { var r; for(var i = 0; i < 4; i++) { for(var j = 0; j < 3; j++) { r = new Rectangle(i * blockSize, j * blockSize, i*blockSize + blockSize, j * blockSize + blockSize); piecesArray.push(r); } } scrambleArray(piecesArray, 30); drawImage(); }
As you may have noticed, this function utilizes several other methods that we haven't created yet: Rectangle, scrambleArray and drawImage. We'll get to those in just a bit, but first let's run through what's happening in this method. The purpose of this function is create our puzzle pieces. Remember our blockSize variable that was set to 160? If you divide our image width, 640, by 160 you get four. That's how many columns our puzzle will have. If you do the same for the height, 480, you get three. In this function we are looping through all the columns and rows in our image and creating a rectangular boundary for each piece and then adding that piece to our piecesArray variable.
We haven't created our Rectangle function yet, but it will require four parameters: left, top, right and bottom. When we first enter our double for loop, both i and j will be zero so the first rectangle we create will have a left and top position of zero. For the right and bottom sides, we are passing i * blockSize + blockSize and j * blockSize + blockSize, respectively. We know that blockSize is 160 so our first rectangle's right and bottom properties will both be 160 (0 * 160 + 160). As i and j increase, the bounds of the rectangle created change accordingly.
After creating the pieces we call two more function that haven't been made yet: scrambleArray and drawImage. Before we get to those, let's go ahead and define our Rectangle function.
function Rectangle(left, top, right, bottom) { this.left = left; this.top = top; this.right = right; this.bottom = bottom; this.width = right - left; this.height = bottom - top; }
Simple enough, right? All we do is define our left, top, right and bottom properties according to the parameters and then we compute the width and height based on those values. With that out of the way, let's look at the scrambleArray function we came across earlier and see how it is implemented.
function scrambleArray(ar, times) { var count = 0; var temp; var index1; var index2; while(count < times) { index1 = Math.floor(Math.random()*piecesArray.length); index2 = Math.floor(Math.random()*piecesArray.length); temp = piecesArray[index1]; piecesArray[index1] = piecesArray[index2]; piecesArray[index2] = temp; count++; } }
This function isn't too complicated either. It takes two parameters: the first is the array we want to scramble and the second is how many times we want to run the scramble loop. We begin by setting up a few variables, including a count that is initialized to zero. Next we start a while loop. In this loop we grab two random indices from our array of puzzle pieces and we swap them. In our case, the loop will perform 30 swaps because I passed in 30 when I called scrambleArray from the onImage1Load function.
Next up is our drawImage function. This method is responsible for actually drawing our pieces to the canvas rendering context.
function drawImage() { var r; for(var i = 0; i < 4; i++) { for(var j = 0; j < 3; j++) { r = piecesArray[i*3+j]; ctx.drawImage(img, r.left, r.top, r.width, r.height, i*blockSize, j*blockSize, blockSize, blockSize); } } }
Just as we did when we created our puzzle pieces, we are again looping through all the columns and rows in our image. We grab the corresponding rectangle piece from our piecesArray variable using the formula: column * numRows + row. Then we tell our rendering context, ctx, to draw. The context's drawImage function takes in several parameters. The first is the image we're drawing from. The next two are the top x and y coordinates of the source image; these are followed by the width and height of the drawing you want to do. The next four arguments refer to the same properties, but this time with reference to where you want to draw on the canvas element. If this is confusing, you can get a more in-depth look at the function at http://www.w3schools.com.
Ok, we have three more functions to cover before we're done. Two of them are smaller helper methods and one is the big one which handles most of the logic in our program. We'll begin with the helper methods first. Add the following two functions to your script.
function highlightRect(drawX, drawY) { ctx.beginPath(); ctx.moveTo(drawX, drawY); ctx.lineTo(drawX + blockSize, drawY); ctx.lineTo(drawX + blockSize, drawY + blockSize); ctx.lineTo(drawX, drawY + blockSize); ctx.lineTo(drawX, drawY); ctx.lineWidth = 2; // set line color ctx.strokeStyle = "#ff0000"; ctx.stroke(); } function swapRects(r1, r2) { var index1; var index2; var temp = r1; index1 = piecesArray.indexOf(r1); index2 = piecesArray.indexOf(r2); piecesArray[index1] = r2; piecesArray[index2] = temp; }
The first function, highlightRect, will draw a highlighted border around the piece the user has currently selected. It takes in two parameters: drawX and drawY. It uses these coordinates as a starting point for drawing the highlight. All we do is use the built-in functions moveTo and lineTo to draw a square. We set the line thickness and color as well to make it more obvious.
The other function, swapRects, is also fairly simple. It takes in two rectangles (or pieces, if you will) and swaps their position in the array. This is key to our game because of the way it works. The user will first click one piece and then they will click another to swap with. The two selected pieces will trade positions. The user's goal is to move the pieces into the correct order to display the proper image.
At the start of this tutorial, when we set up our html page, we created a canvas element. We also gave that canvas element an onclick callback function. It is time to write this function and finish up the tutorial!
function onCanvasClick(evt) { clickX = evt.offsetX; clickY = evt.offsetY; var drawX = Math.floor(clickX / blockSize); var drawY = Math.floor(clickY / blockSize); var index = drawX * 3 + drawY; var targetRect = piecesArray[index]; var drawHighlight = true; drawX *= blockSize; drawY *= blockSize; ctx.clearRect(0, 0, 640, 480); if(selected1 != undefined && selected2 != undefined) { selected1 = selected2 = undefined; } if(selected1 == undefined) { selected1 = targetRect; } else { selected2 = targetRect; swapRects(selected1, selected2); drawHighlight = false; } drawImage(); if(drawHighlight) highlightRect(drawX, drawY); }
There's quite a bit going on here, but it really isn't too complicated. The function takes in one parameter: the event that was generated by the click. The first thing we do is figure out the click x and y position using evt.offsetX and evt.offsetY. The offset values give us the x and y coordinates of the mouse click with respect to the current element, our canvas. At the time of this writing, this functionality isn't supported by Firefox, that is why we checked the browser in the onReady function at the beginning of this tutorial.
Next, we divide the click position by the blockSize to help us calculate the index of the clicked piece. Once we've calculated the index (column * numRows + row), we grab the clicked piece and assign it to local variable targetRect. The last variable there is just a boolean that tells us whether or not to draw a highlight around the clicked piece; it defaults to true. Once we've determined the index, we want to multiply the drawX and drawY variables by blockSize to get the actual pixel coordinates of the puzzle piece that was clicked.
In the next bit of code we clear the image in preparation for drawing any changes made. We then check our selected1 and 2 variables. We declared these at the top of our script block, but until now, we hadn't used them. These are used to store the clicked pieces. If both variables are NOT undefined, then we should clear them so that the user can make a fresh pick.
Next we check if selected1 is undefined. If it is, that means this click is the user's first selection for this round so we assign the clicked puzzle piece to selected1. If selected1 is NOT undefined, that means the user already has selected one piece to move, so we know that the piece they just clicked is the one they want to swap positions with. In this case, we set the selected piece to selected2 and then call our swapRects function that we created earlier. This method will switch the position of the two clicked puzzle pieces and because the two pieces are swapping places, we don't need to draw a highlight, so the drawHighlight variable is set to false.
After we've determined which pieces were selected and made any necessary changes, we redraw the image with a call to drawImage. The final bit of code checks to see if we should draw a highlight or not. If so, we call our highlightRect function and pass in the drawX and drawY positions.
If you followed along correctly you should now have a basic, working puzzle game. In this tutorial you learned how to use HTML5, the canvas element and javascript to create a simple puzzle. It may have seemed like a lot, but if you look at everything it is broken down nicely and comes in at less than 200 lines of code. Pretty neat!
If things aren't quite working for you, feel free to check out the completed HTML5 puzzle game and view the source for yourself. Thanks for reading and let me know what you think in the comments!


text:
Stocks mixed; Netflix jumps after results
Summary: Netflix adds 2.3 million subscribers; eBay earnings beat forecasts; IBM earnings miss hurts Dow; Coach holiday sales slump; Apple shares rise in Icahn tweet; Texas Instruments to cut 1100 jobs. Bobbi Rebell reports.
After the bell action in earnings- Netflix beating forecasts- subscribers jumping 2.3 million. That big number sent the stock soaring. Profits were higher for the 4th quarter- net income up to $48 million for the quarter. It was just 8 million a year ago. eBay reported a higher profit - more transactions were paid with its PayPal service-and announced a $5 billion stock buyback proposal. eBay stock rose in after the bell when the e-commerce company also said activist investor Carl Icahn had acquired shares and submitted a proposal to spin off its PayPal business. eBay said they routinely assess the company's strategic direction. As for Thursday's trading action- a mixed picture with the Dow taking a step back, the other major indexes posting gains. IBM was the biggest drag on the Dow. Investors selling after disappointing earnings after Tuesday's close. The company missed revenue expectations for a fourth straight quarter on weakening demand, particularly in growth markets like China. United Technologies was a bright spot. Shares rose after the world's largest maker of elevators and air conditioners reported fourth-quarter profit that topped Wall Street estimates, although revenue fell shy of expectations. Norfolk Southern - one of the best performers on the S&P 500. The railroad posted a 24 percent rise in quarterly income that beat Wall Street expectations. Coach U.S. holiday sales were even worse than forecasts- same store sales down almost 14 percent in North America. Overall earnings and revenues missed as well- customers passing over Coach's designs for the more popular ones from brands like Michael Kors and Kate Spade. They do say things are better in the Asian and European markets. Aside from earnings, Apple shares on the rise - Activist investor Carl Icahn urged Apple to return more cash to shareholders- tweeting that he had bought more than $500 million worth of shares in the company in just the past two weeks; that brings Icahn's total investment to more than $3 billion. Texas Instruments plans to cut 1,100 jobs in the United States, Japan and India, or about 3 percent of its global workforce, in a corporate restructuring to save $130 million by the end of 2014. And turning to Europe: McDonald's France has confirmed tax inspectors visited its local headquarters. But it is denying any wrongdoing. French media reported it had transferred more than $3 billion abroad since 2009 to avoid taxes. As the European trading, the major country indexes were mixed.


text: Offer your customers payment flexibility for software licenses and subscriptions Home Industries Tech Solutions Payment flexibility Use the power of payment flexibility to capture and retain more customers Software licenses and subscriptions represented 40% of all technology financed in the US in 2016. Why? Payment flexibility allows customers to manage IT budgets, ROI considerations, and cash flow. Financing is the most prevalent method to acquire software licenses and subscriptions Method of Software Financing – 2016 Value of software payment solutions Payment solutions that are tailored to the unique requirements of your customer can help them: Acquire more licenses today without budget creep Take advantage of volume discounts while locking in price Match the payment terms to the utilization and accelerate ROI Empower business line decision-makers Improve forecasting Streamline renewals by removing the traditional expense spikes "If the license has a three year term, even fortune 500 companies would prefer to make payments over three years in order to match the payments with the use of the product." – William Veatch, Morrison Foerster (Source: The Monitor Nov/Dec 2014) Flexible contract options Your catalyst for flexibility. Monthly, quarterly, semi-annual, and annual payment structures, payment deferrals, seasonal and ramped payments, and non-appropriation of funds for SLED. What can be financed? Perpetual license Term license Single and multi-year subscription Single and multi-year maintenance Flexible payment structures Step payment: Seasonal payment: Deferred payment: - Lower payments to start contract - Match payments to project cash flow - Step up or down and predictable - Payments match seasonal cash flow - Flexible and predictable - No payment to start - Typically deferred 90 days - Fixed payment for remainder How U.S. companies view payment solutions Why DLL? Bryan Spence Vice President of New Business Development Contact me if you want to know more about tech solutions. Contact me Bryan Spence +1 610 386 3410


text:
The young soldier lingered in front of my Adopt-a-Soldier table at Hunter Army Air Field in Savannah, preparing to get on the plane for Iraq.
I could tell by the knots of anxiety in his forehead that he needed to talk.
"What unit are you in?" I asked.
He gestured to the soldiers stacking their gear in a side area of the terminal.
"I'm in the band," he said.
"Oh, the band!" I said. "The band is so important. Music makes people feel better, I mean, it always makes me feel better, it cheers people up to hear live music. You'll be helping to keep morale high," I enthused.
He gazed mutely at me for a moment, his blue eyes not registering my chatter.
"I'm the bugler," he said.
"I'll be playing 'Taps' at the memorial services of the soldiers in our unit who get killed."
The easy words froze on my lips.
In a breathtaking instant, music had morphed from drum major to pall bearer - and proclaimed her place in the affairs of men.
How protean, pervasive and powerful she is.
When in our human history did our lyrical linkage of words begin, this uninterrupted sustainment of pleasing sound?
And why can we not live without it?
"The man that hath no music in himself, nor is not mov'd with concord of sweet sounds ... let no such man be trusted," Shakespeare wrote in "The Merchant of Venice."
Perhaps we were born with music in our souls. Indeed, it is a gift that we share with the angels.
They sang in awe at the spectacle of God's creation, and their joy at the birth of our Saviour burst through the skies in song.
When the lone bugler sounds the notes of "Taps," music becomes our voice for feelings too deep for words.
We reach for it when emotion spills over the rim of our vocabulary, when exultation is boundless, when sorrow knows no bottom.
But music consorts with us not only in our extremity, she comes alongside us in the commonplace.
She murmurs comfort when we're simply too frightened or too confused for speech. Like when we find an abandoned baby on the doorstep of our church.
At night.
By now, most of us have heard the story of the five young African-American men, musicians, practicing on a recent Monday night at the New Life Apostolic Temple.
One of them, John Anderson, left practice to go pick up another band member who had no transportation. When they arrived back at the church and started to go inside, John noticed a bloodstained bundle lying on a bench near the front door.
The bundle was a baby girl wrapped in a towel, so newly born that six inches of umbilical cord still trailed from her tiny tummy.
In shock and confusion, Anderson left the baby on the bench and ran inside to get his friends.
While John telephoned 911, band mate Jonathan Drummond took off his shirt, lifted the baby from the dirty towel, and wrapped her against the cold.
The baby was healthy, virtually unaffected by her few hours of exposure.
Local hospital officials released her into the care of the Chatham County Department of Family and Children's Services.
But there is one small detail that was not reported in the news stories.
That it happened is a testament to our need for music, to its power to proclaim our awe, to voice our compassion, and to offer comfort when words fail.
What these young men did is an echo of the angels' "Gloria" 2000 years ago.
Jonathan cradled the abandoned baby in his arms.
While they waited for the ambulance to arrive, the boys gathered at the altar... and sang to her.
Carol Megathlin is a Savannah writer.


text:
Best Markets for Access to Business Capital
For the second year in a row, Canada leads the Milken Institute Capital Access Index, an annual ranking of entrepreneurial access to capital around the world.
The 2009 Capital Access Index captures the data and analysis of the global capital markets in 2008, during one of the worst credit crunches for businesses since the Great Depression. The index helps businesses and entrepreneurs discern which countries' capital markets have the most breadth, depth and vitality.
The report notes that the dramatic plunge in value of corporate bond issuance (down 60 percent) and the world equity market (down by half) had the expected result on industrialized nations. But while growth in emerging markets slowed, it did not sink. Emerging markets were better positioned than their U.S. and European counterparts because of larger market reserves, lower debt burdens and stronger growth rates, due in large part to increased internal demand.
The Top Ten
The nations with the best access to business capital in 2008 (previous year's ranking in parentheses) are the following:
1. Canada (1)
2. Hong Kong (2)
3. United Kingdom (4)
4. Singapore (5)
5. United States (6)
6. Switzerland (3)
7. Sweden (11)
8. Australia (9)
9. Netherlands (7)
10. Finland (10)
The BRIC nations
Brazil moved from No. 51 to No. 49, with significant advances in bond market development and alternative sources of capital.
- Russia ranked 54th, compared to 58th in last year's index. The country saw improvements in all index components except for financial and banking institutions and equity market development.
- India moved from No. 47 to No. 44. It saw declines in macroeconomic environment and institutional environment scores but made progress in alternative sources of capital and in international funding.
- China skyrocketed 13 positions, from No. 45 to No. 32, due to sound economic growth and a robust banking sector that helped stabilize the economy, even though trade surplus started to shrink toward the end of the year.
The Top Half All 27 industrialized countries are included in the top half of the CAI rankings. Rounding out the top half are 13 developing European countries, seven Middle Eastern countries, five developing Asian countries, six Latin American countries, and three African countries. Most industrialized countries saw a significant drop in their equity market development scores. This is caused by either higher volatility or fewer new listings.
The Bottom Half Of the 61 countries in the bottom half of this year's CAI rankings, 30 were African countries. Almost all suffered from further declines in their already dismal institutional environments, emphasizing the need for these countries to improve their economic infrastructure to provide a stable platform for private business financing.


text:
W3C | XML Signature and XML Encryption
This document describes some possible areas and issues related to future work on XML Signature (XDSIG) and XML Encryption (XENC) — jointly (XSE) — by capturing common questions and their (sometimes incomplete) answers. This is not intended to be a introduction, tutorial, or FAQ about these specifications; instead, it is a fairly technical discussion of XML architecture and dependencies.
This is a personal draft, with no formal standing, soliciting discussion and comment. I'm sure there are errors and confusion which readers are encouraged to note and send to the author.
It is expected that all specifications chartered under the XSE Activities will be completed by December 2002. Those specifications are firmly rooted in the XML 1.0, Namespaces 1.0, and XPath 1.0 Recommendations. Given the maturation of the XML Infoset 1.0 and XML Schema 1.0 specifications there is now interest for the XSE technologies to be more closely integrated with these new specifications. This document captures questions, answers, and issues for further work related to this migration.
No. XDSIG uses the XPath 1.0 data model to abstractly represent a parsed XML instance. This model is used within the XDSIG Transform Processing to select and pass XML instances and/or fragments between transforms. For instance, an XPath element node might be selected, transformed, and then serialized. While the XPath 1.0 and XML Infoset 1.0 data models are similar, there are crucial differences. Since the XDSIG Transform Processing is dependent on both XPath's data model and node processing (i.e. selection) it would be best for future versions to use a version of XPath based on the Infoset. XPath 2.0 is based on Infoset but also requires additional "support for XML Schema types" and for representing "collections of documents and of complex values." These features support XML Query 1.0 and and XSLT 2.0 requirements and may also be beneficial to some XSE applications, though they might also be unnecessary and costly to others.
Yes. Most Infoset applications are still XML 1.0 applications: they are able to serialize and parse an infoset. Consequently, an application that processes an XML document as information items need only define a mapping between its model and the XPath 1.0 model, or simply serialize and then permit the XML Signature application to parse the serialized instance into an XPath node-set. During this translation or serialization/parsing some information might be lost (given the differences alluded to above) that may, or may not be, of consequence to the application.
Partially, and once serialized. Encryption algorithms require octets (or
bits) as inputs to their cryptographic algorithms. XENC provides a framework
for encrypting different types of information via its
mechanism, and presently provides two specific identifiers and processing
rules for the XML 1.0 "element" and "element content" character productions
as octets. These are, of course, XML 1.0 serializations of parts of
an "Element
Information Item" and its "[children]". However, as described in XENC's
4.3.3 Serializing XML and shown in an email
from Ross Thompson on behalf of the Schema WG this can lead to problems
such as the loss of infoset information such as the binding between a
namespace prefix and its URI.
Other types and their processing could be defined. For instance, a specification could provide an identifier for a complete serialized representation of an infoset item, a pickled python DOM node, or compressed data. These specifications would also have to define the encryption, decryption, and replacement processing: how an object (e.g., infoset item) would be removed, encrypted, decrypted, and reinserted into another infoset and what "fix-ups" would have to be done (e.g., XInclude's adjustment of a IDREFs into their new resulting infoset).
Potential Requirement: to work in the context of Infoset only applications and where complete infoset items are encrypted one REQUIRES a serialization for infoset items that is non-ambiguous and non-lossy.
Yes, with some caveats. XML Schema 1.0
does two things. First, it validates an instance according to a schema, this
has no affect on XDSIG. Second, it also might modify the infoset resulting
from parsing and validating the instance. For example, "Schemas may also
provide for the specification of additional document information, such as
normalization and defaulting of attribute and element values." These changes
are typically reflected in the "augmented infoset" as a "[schema normalized
value]". In a naive mapping to the XPath data model, these changes would not
be retained. A more careful mapping or serialization/re-parsing is more
likely to retain this information. Regardless, XDSIG's
extensibility permits careful treatment of this issue as shown by the UDDI Schema
Centric Canonicalization. However, for XDSIG to adopt and support schema
augmented infosets as its native data model (and processing/transforms) it
would have to be modified to rely upon schema aware XPath 2.0 and related
As reflected in the XENC Requirements, XENC does not concern itself with maintaining the validity of an instance when it encrypts parts of it:
- ...
- XML Instance Validity {WS}
- Encrypted instances must be well-formed but need not be valid against their original definition (i.e. applications that encrypt the element structure are purposefully hiding that structure.)
- Instance authors that want to validate encrypted instances must do one of the following:
- Write the original schema so as to validate resulting instances given the change in its structure and inclusion of element types from the XML Encryption namespace.
- Provide a post-encryption schema for validating encrypted instances.
- Provide information on how to restore the document to its original state via application context (e.g., headers). {List: Reagle}
Ross Thompson on behalf of the Schema WG reiterates some of these options and provides some examples of how a schema might be written to accommodate them.
No. The XSEC specifications are dependent on the {XML, NS, XPath} 1.0 set of specifications. For XSEC to be migrated, aside updating the normative references, one might have to make some minor, but substantive, changes to the specifications and their implementations. Furthermore, the relationship between the {XML Infoset 1.0, XML Schema, XPath 2.0} set of specifications and {XML 1.1, NS 1.1} is unclear.