First big project done...now onto METS
It’s been a long week for this internship. I started it, on Monday, completing revision of EAD 1.0 records into EAD 2002, then spending over 4 hours struggling with XSLT transformation. What stumped was some confusion over how the relationships and hierarchies work. In the world of programming, and in the world programming for the Web in particular, I’ve discovered it’s always about the hierarchy. The inventors of the Web were academics, after all. But, after much gnashing of teeth and a crucial bit of help from my supervisor/on-the-job professor I managed to solve the problem and so an hour before I leave for the weekend I have completed the project of the past two weeks.
I’ve learned that XSLT is like any other programming language: the most important thing is to know what you want to happen and where, exactly, you want that to happen. I’ve taken to keeping scratch paper next to me as I program so that I can jot down file paths and element attributes I need to use in certain circumstances. Coding is truly learning how to rewire your brain to think like a computer: all those little assumptions we make about where to find the coffee creamer and how to pour it into the cup before we pour the coffee in needs to be strictly enumerated for the computer. Without each baby step the computer freezes, paralyzed with indecision and doubt and presents a cryptic error message that it is my job to decipher. I’ve gotten pretty good at that particular task.
The process of creating a transformation style-sheet transformation is actually quite fun, and I can only imagine that transforming the MODS records into HTML output is even more fun. I predict that establishing rules for HTML output is less about the logical structure of transferring one element in a particular place in the record into a very different place in the new record and more about the design of a workable user-interface so that the client can quickly and easily understand the information presented to him or her at the click of a mouse. My only question after this project is about my failed attempt to use the XSL attribute displayLabel that was rudely rejected by the validator for the MODS output. I wonder how that might be used. It makes sense that it might be used in HTML output as a trick of the user-interface as a means of making the information clearer for the patron surfing the database. In all, however, the XSL transformation went very well and I look forward to presenting my work to the individual responsible for the project into which it’s going to be folded.
I’ve learned that XSLT is like any other programming language: the most important thing is to know what you want to happen and where, exactly, you want that to happen. I’ve taken to keeping scratch paper next to me as I program so that I can jot down file paths and element attributes I need to use in certain circumstances. Coding is truly learning how to rewire your brain to think like a computer: all those little assumptions we make about where to find the coffee creamer and how to pour it into the cup before we pour the coffee in needs to be strictly enumerated for the computer. Without each baby step the computer freezes, paralyzed with indecision and doubt and presents a cryptic error message that it is my job to decipher. I’ve gotten pretty good at that particular task.
The process of creating a transformation style-sheet transformation is actually quite fun, and I can only imagine that transforming the MODS records into HTML output is even more fun. I predict that establishing rules for HTML output is less about the logical structure of transferring one element in a particular place in the record into a very different place in the new record and more about the design of a workable user-interface so that the client can quickly and easily understand the information presented to him or her at the click of a mouse. My only question after this project is about my failed attempt to use the XSL attribute displayLabel that was rudely rejected by the validator for the MODS output. I wonder how that might be used. It makes sense that it might be used in HTML output as a trick of the user-interface as a means of making the information clearer for the patron surfing the database. In all, however, the XSL transformation went very well and I look forward to presenting my work to the individual responsible for the project into which it’s going to be folded.

0 Comments:
Post a Comment
<< Home