Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
The Internet

Online Comics Syndication in XML 57

gravling writes: "Jason McIntosh has written an interesting article on XML.com about ComicsML, a language he's invented to allow online comics artists to describe and syndicate their work. Using ComicsML can let you do similar things to the UserFriendly search engine, but on a web-wide basis."
This discussion has been archived. No new comments can be posted.

Online Comics Syndication in XML

Comments Filter:
  • We all know that if there are thought police on any /. subject anymore, it's User Friendly, as I can see from your present moderation total.

    Of course, I don't think Friends or 3rd Rock From the Sun are very funny either, but apparently millions of other people do. The things that pass for humor seem awfully subjective.


    --

  • As a sidenote I recommend that anyone not quite sure about XML/Schemas check out XMLSpy [xmlspy.com] (Disclaimer: I don't work for that company, nor do I know anyone who does. I just think it's a very nice program for getting practical experience relating to XSD schemas, etc.).

  • by Trepidity ( 597 ) <delirium-slashdot@@@hackish...org> on Wednesday April 18, 2001 @09:17PM (#280955)
    User Friendly, eh?

    Usar Freindley [somethingawful.com], Lunix friend.

    (Yuo are WORST comic evar [somethingawful.com].)
  • Hopefully everyone who writes XHTML in ALL CAPS will share cubicles with spammers in hell...

    PS: the first panel is empty.
    --
    mrBlond
  • Actually, I've argued with many comic people over this and comic people are generally technophobic; not the readers, the creators. They hate moving from the paper format. I myself create comics and have a bunch online at my site and have told people that distribution is easier, developing a fanbase is easier and production costs are vastly lower (as a print run for 2000 comics in black and white with 4-color cover is around $1600).

    That coupled with the fact that most independent comics don't even make there money back should be a fantastic motivator for going online but unfortunately, it just hasn't stuck. Personally, I plan to implement ComicsML as soon as possible...

  • Despite the press, XML is NOT that easy to parse. The same hassles we experience with HTML parsers are magnified tenfold.

    I think I speak for anyone who has actually written an XML parser when I say... What?

    Of course XML is easy to parse. The difficulty in parsing HTML derives from it being widely abused. You can't rely on HTML to be well-formed when browsers like IE literally don't require you to close any tags you open (Closing a _table_ is optional, even. Whose bright idea was that?) In contrast, omissions like that simply aren't an option in XML. If your document isn't well formed, the parser won't try to parse it. End of story. (And if the parser does try, the parser is broken) Incidentally, people that write applications that use XML aren't writing the code to validate if a document is well-formed. If they are, they're wasting their time. Use a library, there are plenty of them, for virtually every popular language.

    Now, whether or not the document conforms to a DTD, yes it's somewhat silly to post your DTD on a server that isn't readilly accessible. And we all know there's no such thing as 100% uptime, so what's the Right Answer?

    So it's not the holy grail. Only a fool would say it is. But it's a much better option than everybody just making up their own (often binary) formats for describing things, because it sets the ground rules.

    Ten-fold, eh? I'd love to hear specifics.
  • Thanks for the response; It has given me some useful information, and things to think about.
  • > But your comment on Guile got me thinking; probably it is overkill. But perhaps the flexibility of a full programming language would be beneficial for configuration, although it may not be meant to solve the same problems as XML.

    > Your post got me to (re-)look into Guile, but I was wondering if you (or anyone) had any more specific thoughts on what formats to use for configuration files, and what in particular you do with Guile that replaces what you would have done with XML.

    I'm not a guru at either Guile or XML, and my use of Guile is evolving pretty quickly now that I have started using it regularly. For now, this is how I use it for configuration files.

    I have a "data type" that I call a table, which is of the format (key data). The data can be more tables, giving a tree structure to the configuration, or it can be bottom-level data, serving as the leaves in a tree of data. So a simple example of a configuration file for a fictitious game would be:

    [Sorry; I had to remove the indentation to get it past Rob's lame-o lameness filter. Lack of indentation really reduces readability.]


    (configuration

    (difficulty-level 7)

    (sides
    (good
    (description "The Good Guys")
    (restrictions no-nukes no-poison)
    )
    (bad
    (description "The Bad Guys")
    (restrictions none)
    )
    (ugly
    (description "The Ugly Guys")
    (restrictions no-teeth)
    )
    )

    (graphics
    (size (x 550) (y 490))
    (theme penguins)
    (images "mytiles.xpm")
    (animation-speed
    (chase-scenes 12)
    (love-scenes 3)
    )
    )

    )


    In the "tree" metaphore, configuration is the root, difficulty-level, sides, and graphics are the first level of branches, etc., on down to the leaves where the sub-tables terminate in atomic data.

    For simplicity, the following uses pseudocode rather than the actual Guile syntax.

    You declare appropriate variables of the Guile SCM type and then use Guile's read to load the configuration file into your program as a Scheme object (without trying to evaluate it as a Scheme expression).

    conf=read("~/.mygame/myconfig.scm")

    Since you are using tables, you use Guile to define a function lookup(keyname,table) that converts the key-name string into a Guile symbol, and then looks it up in table table:

    grap=lookup("graphics",conf)
    speeds=lookup("animation-speed",grap)
    tmp=lookup("chase-scenes",speeds)
    ...do whatever with the value...
    tmp=lookup("love-scenes",speeds)
    ...do whatever with the value...

    Your program just runs down the tree like that, looking for whatever data it needs. When you get to the bottom, you use a Guile built-in to convert the data to an integer, string, or whatever your program expects.

    Some data can be iterative, too. In the example, sides is a list that you can modify in your config if you want to define more player sides (say, for AI opponents). Your configuration reader just uses your lookup to find sides, and then iteratively loads one side record at a time until you run out of definitions. (In Scheme terms, you process the car with your lookup function, throw away the car, and continue your iteraton on the cdr.)

    The lookup function is really easy to define, and you put it in your library directory so all your programs can use it. It just converts the keyname string to a Guile symbol, and then uses the built-in assoc to find that symbol as the key for anything in the cdr of table. If all your data is in the table format, it works to look up anything, working down the tree recursively. For instance, if you wanted the y size and didn't need anything else, you could do:

    y=lookup("y",lookup("size",(lookup("graphics",conf ))));

    You can also easily define a recursive check_table that verifies that something you loaded is in fact a table structure, in order to trap errors early if a user has screwed up his config file.

    The only things I don't use lookup for are the iteration as described above (but even then I use lookup to find the iterative definition, and then use it again to parse each element in the iterative structure), and to get the bottom level data out of the "leaves", e.g. to parse:

    (y 490)

    I have a library function get_int that accepts a leaf of the form (key integer), extracts the second element, and converts it from a Scheme integer to a C integer, and similarly for other atomic data types.

    Also nice, Guile does garbage collection, so you can use it to splice things together out of the configuration and throw away the husks without having to explicitly collect all the trees of objects that you created.

    --
  • I want to be able to search Garfield every day to see how many times he has used the exact same theme. I bet I could find some matches that are pretty close to exact, with minor differences in the phrases used and "art". That comic is so lame, yet ranked so high, I've often wondered about doing this. I've heard that comics are ordered on the page depending on popularity, and Garfield is #1 on many comics pages, and usually in the top few.
    Another example of how most rating/moderation systems suck, like the way slashdot comments/moderation have very low signal to noise ratio. Just adding a bit more noise, thank you!
  • Comic people aren't necessarily technophobic, but... well... you gotta find time to do the actual writing and drawing. Worrying over technical minutia doesn't get the comic strip done.

    To this end, Keenspot/space's AutoKeen is brilliant (developed by Nukees [nukees.com]' Darren Bleuel)... artists don't have to worry about programming, they just have to insert simple tags in the HTML that do a lot of behind-the-scenes work.

    If it was a pressing issue, Darren could probably develop an AutoKeen indexing system. I'm not sure how useful that would be for some comics... indexing my own strip would be like indexing a novel.

  • Perhaps the specification could include something that makes sense of incomprehensible comics like Zippy the Pinhead and its imitators

    Honestly, Zippy isn't that hard to get if you realize that essentially every joke is based on a reference to pop culture, generally from the '60s or '70s. Of course, there's lots of times that I "get" the joke, but don't find it particularly amusing.
  • Although I suspect Scott Adams was right -- Zippy has one joke and it's on the reader.

    At least two:

    "HELLO KITTY gang terrorizes town, family STICKERED to death!"

    (Personally, I was exposed to Zippy quotes before seeing the actual Zippy comic strip. I had been hoping that most of the quotes would actually make sense when taken in context.)

  • I know that the above comment was probably intended as a joke and moderated as such, but you actually CAN find some Marvel Comics online:

    http://www.marvel.com/dotcomics/ [marvel.com]

    Marvel has made some online editions of its Ultimate line available. Issues #1 of Ultimate Spider-Man and Ultimate X-Men are both up there. Check them out. They are both excellent.

  • <STRIP CLASS="PEANUTS">
    <PANEL>
    </PANEL>
    <CHARLIE_BROWN ACTION="RUNNING"></CHARLIE_BROWN>
    <LUCY ACTION="HOLDING_FOOTBALL"></LUCY>
    <PANEL>
    <CHARLIE_BROWN ACTION="RUNNING"><THINKING_BUBBLE TEXT="I'm going to kick it this time!"></THINKING BUBBLE></CHARLIE_BROWN>
    <LUCY ACTION="HOLDING_FOOTBALL"><GRIN STYLE="MISCHEVIOUS"></GRIN></LUCY>
    </PANEL>
    <PANEL>
    <CHARLIE_BROWN ACTION="FALLING"><SCREAM TEXT="WAUUUGGHH!!!"></CHARLIE_BROWN>
    <LUCY ACTION="YANKING_FOOTBALL"></LUCY>
    </PANEL>
    </STRIP>

    Well, if that ain't funny, I don't know what is...
    -----------------------
  • Having bazillions of XML grammers (one per application) is not much better than the bazillions of non-XML file formats we have now.

    I honestly don't see XML as much of a step forward. I'm not saying it's bad; I just don't think it solves any important problems.

    -- Kris

  • I was going to suggest dailystrips [sourceforge.net], which I use daily, but apparently the author got the old Cease and Desist. This is a fabulous program, and I recommend it for personal use.
  • by Victor Ng ( 18609 ) on Wednesday April 18, 2001 @07:12PM (#280969) Homepage
    What the hell is this? One of the core elements of comics is the panel layout. The author of the article makes the concession that ComicML doesn't support proper panel layout, but this is a ludicrous limitation.

    The only comics that do not heavily use panel layout are the 3-6 panel comics found in newspapers. All of the mainstream comics that are popular on the newstand from Marvel, DC or any of the other publishers require laying out 28-32 pages with ~6 to 10 panels per page.

    Panels are not necessarily rectangular, they may not align nicely. ComicML seems to actually reduce the expressiveness of a dead tree medium for the sake of making it techie cool with XML.

    an unabashed comics fan,
    vic

  • It sounds like you want something like SMIL http://www.ruleweb.com/dhtml/smil.html [ruleweb.com]
    SMIL stands for Synchronized Multimedia Integration Language. It is an XML based language. Its simple tag structure resembles HTML, but it allows you to create presentations which are composed of different media types including Real Video, Real Audio, RealText (new), RealPix (new), AVI, WAV, AU and other media types. It includes timeline features as well as wipes and animation.
    There are also things that help with the generation of FLASH content like Swift Generator [swift-tools.com], which I have used and is quite fast, or various Perl modules for building them... maybe someone has put these together to create something like what you want?
  • Perhaps the specification could include something that makes sense of incomprehensible comics like Zippy the Pinhead and its imitators.

    I mean, Comics I Don't Understand [crimeweek.com] is a useful resource but it assumes that the strip makes at least a particle of sense.

    Although I suspect Scott Adams was right -- Zippy has one joke and it's on the reader.

    Unsettling MOTD at my ISP.

  • Well, I guess what it comes down to, is I think I could put an XML to Flash language to good use. I do not like mice, and prefer writing text to manipulating a UI (for many things). Its kind of like playing Moria vs. Simcity. You still have to scan in some images, and tunes are not easy. But from there you could store all the different scenes / strips in your MySQL database, and then render them to Flash, that would be sick.

    What does it accomplish? Create / Edit animation, maybe even personalize it or distribute it.

    Its all about pictures, integrate a smoothe story line. How hard is that?
  • Oh, you can zip it? Great, let me run out and link the zip libraries into my application. What? There's licensing issues? Well, what do I do know?

    ZIP [info-zip.org] gzip [gzip.org] and bzip [redhat.com] are all available under very liberal free licenses (no copyleft restriction, OK to use in both closed and open source software).

    gzip and bzip2 aren't difficult to use for intermediate (1 to 2 years of experience) C programmers either. I don't know about ZIP because I've never used it, but it's probably not much harder.

  • We are developing an application (graphical stimuli presented to a subject, with psychometrics being recorded), and are deciding on how to go about dealing with configuration files, etc.

    XML seems like a fairly decent way to store our configuration info (and it will allow an overall configuration to link to other sub-configurations, which is nice for our app.)

    But your comment on Guile got me thinking; probably it is overkill. But perhaps the flexibility of a full programming language would be beneficial for configuration, although it may not be meant to solve the same problems as XML.

    Your post got me to (re-)look into Guile, but I was wondering if you (or anyone) had any more specific thoughts on what formats to use for configuration files, and what in particular you do with Guile that replaces what you would have done with XML.

  • Thanks for the feedback. I need to clear up this statement; I didn't mean that I based ComicsML's first tagset around Western comics ideas to the exclusion of all else, but rather that I created them based on what I knew best, which I decided to label as 'Western' since I'm not nearly as familiar with manga, only enough to know that Eastern comics have developed their own idiomset, and I didn't want to look like I was ignoring it. (Ironically. :) )



    It's important to note that ComicsML's panel-description markup detail logically what's going on, not physically. So there's no giant-sweatdrop tag, no more than there's a Western-style sweat-flying-off-the-forehead tag. ComicsML would, instead, have a this-character-is-nervous tag, or something similar. Things like this are visual idioms that are crucial to the comic, but not so appropriate to its descriptive markup.


    As for the other issues you raise, about unusual layout and non-verbal balloons, these are both examples of the many challenges and questions ComicsML has ahead of it. It's pretty much open to all suggestions, right now, and I'm glad you bring these up! Now I invite you and other interested parties to bring them up in email to me, or on the ComicsML mailing list (see esp. the ComicsML resource page [jmac.org]), instead of on Slashdot, where they'll go away in a couple of days. ;)




    Bzzt! So sorry, but you lose! Please play again, McIntosh-san!



    Okay, thanks. :)


    J
    MacOS Open Source [jmac.org]
  • > Your sig getting really pathetic.

    Whew. That's one relief. When I saw that an AC had replied, I was afraid I was about to get flamed for recommending Guile over XML.

    --
  • This has got to be a magnificent troll, but I can't resist replying so that the Slashdot unintelligentsia doesn't get confused.
    Do we really need another obscure specification sitting on another server that will be down 10% of the time and cause parsers to choke, programs to hang, and tech-support desks to light up like Christmas trees.

    First of all, XML documents don't need to conform to any DTD in order to be parsed or be useful. Documents that elect to specify DTDs indicate public URNs so that the DTD can be obtained from the network if it isn't present locally. That's why you distribute the DTD with the program. The public URN of a DTD is essentially for backup, in case a local version can't be found. There is no need to hit a remote server to parse or validate an XML document. No developer in his or her right mind would intend or require this.

    It's not that it's a particularly great solution, it's just that it's the new hot standard. Furthermore, let's face it, XML is real easy. So easy that very mediocre minds can grasp it and feel like they're "on top" of the current technological trend.
    I guess this is opposed to "superior" minds who spend their time groking knock-off Unix-isms a decade or two out of date. Are you really making this argument (in public, no less)? XML is a simplified version of SGML, which has been around for years, and is NOT easy to wrap your brain around if you're not a "document head". XML was designed to eliminate the infrequently used complications of SGML and make it suitable for everyday use, without losing the underlying advantages of SGML. Because of this, it is fairly straightforward, but this is exactly its beauty. XML is human readable and robust, both huge advantages, not the least in distributed computing, which is why we're seeing it all over the place now.
    Despite the press, XML is NOT that easy to parse

    If it's as "consistent" and "simple" as you indicate, then why is it so hard to parse? This is trolling at its best. The thing that makes XML so productive, and a significant advance to the state of the art, is the fact that you simply link in the pre-built, ready-to-run XML parser of your choice and it does all the parsing work for you. XML parsers exist for every language under the sun. The idea here is that instead of writing your own code for manipulating the low level structure of your data, you use someone else's standard code, and you worry only about the content of the data.

    Furthermore, it often depends on grammar definitions that reside on remote servers. This introduces all the hassles of network-based programming into what should be simple standalone client applications.

    Let me say this again: There is no need to hit a remote server to parse or validate an XML document. You are just plain wrong.

    Please, for pete's sake, when you feel the temptation to create another XML grammar, think about what you are doing. Just say no. Your users will thank you.
    Wrong. Your users will thank you for using XML, because they can actually see the data that's being stored & used by your application because it's human-readable. They will thank you because the format of the data is readily apparent, and can be used by other applications simply by parsing the XML document.

    What are you smokin', Joe?

  • I think you're misunderstnading the purpose of the markup.

    It's not intended to *replace* the comic, it's intended to sit alongside the markup and supply easily-indexable information such as the authorship details and even the dialogue, in much the same way META tags on a site can store non-visible data for search engines.

    -Ciaran
  • Using yacc you can make some grammar yourself that is very easy to parse, and that produces a very fast and efficient parser too.

    Anyone could have written a spec/grammar for some application domain and implemented a parser in lex/yacc very easily. I don't see the big step forward that XML is, except that you don't need to write the yacc grammar anymore. Instead you have to write the DTD and use XSL to transform the input, or use an XML parser to get some internal tree representation of your input (which is possible with yacc-tools too).

    Then the question is: is a yacc grammar so much more difficult to write as a DTD? I can't tell for sure since I'm quite experienced with yacc and not with DTD, but I doubt it.

  • OMG!

    That was the funniest thing i've seen all day!

  • From your reply..

    (i) you don't understand XML very well
    (ii)you haven't done much with xml parsers

    A few points... (I'm not going to bother copy/paste your comment)

    (i)DTDs don't have to be remote.

    (ii)Most XML apps will not touch the parser code, just the API (eg. using libxml or the like)

    (iii)XML solves a lot of the problems earlier, 'looser' SGML based standards brought on, eg HTML. and it's 'optionally-closed-tags' for instanced. That's way HTML was written in XML ( XHTML ), TO MAKE IT EASIER TO PARSE!! I'm not going to venture as far as to say that writing XML parsers (from scratch) is easy. I have in the past, and I'm currently working on one right now - It is not cake. But it is far from difficult and the benefits of a very portable language is worth it

    (iv)What the hell does a XML grammer have be standardised by the W3? There are tons of these grammers out there. And that's exactly what I think the W3C had in mind when they created XML. To have those specialized languages parsable WITH ONE PARSER.

    I have a new bandwagon for you, "the bandwagon of people who know little about a technology but blindly bash it for exactly that".

    I'm sorry man but I'd suggest you stop over at http://www.w3.org/ and do some reading

  • See http://www.bfmartin.com/finder/ [bfmartin.com]

    It even includes a downloadable XML index, though it's not as sophisticated as what's proposed.

    BFMartin

  • Not too long ago, I started a job that required me to learn XML, the "Tupperware of the Internet"

    I guess that makes HTML the charred-black pot.

    "come off crisp and play up to the cynic
    clean and schooled right down to the minute"

  • My thoughts exactly
    That's why my startup page has a lot of comics directly obtained from several newspapers. All you have to do is put the strip you want on a SRC= of the IMG tag.
    This can't be done with a lot of comics that change the name of the image on a daily basis, unless the change of the name is a function of the date (month-day-year). In that case you can use a little javascript to grab these images


  • Check out a program I wrote at http://www.evan.org/Software/Comics.html [evan.org] which does this. It's open sourced C++ code.

    Evan Reynolds evanthx@hotmail.com

  • I know poeple who 'share' scanned in comics online. Old cartoons too. Remember Thundarr the Barbarian? ah..old times...
    ...with Ookla the Mock!
  • Famke? Why not just go for Kelly LeBrock. She's probably still hot, assuming she hasn't killed herself with a 3-day drug-induced drinking binge and purge session by now.
  • I'm sorry to go off on such a rant, but I am SO tired of everything being done in an XML format. It's not that it's a particularly great solution, it's just that it's the new hot standard. Furthermore, let's face it, XML is real easy. So easy that very mediocre minds can grasp it and feel like they're "on top" of the current technological trend. Puh-leeze

    Comment time warped back to 1994 so author can understand the validity of what they wrote

    I'm sorry to go off on such a rant, but I am SO tired of everything being done in an HTML format. It's not that it's a particularly great solution, it's just that it's the new hot standard. Furthermore, let's face it, HTML is real easy. So easy that very mediocre minds can grasp it and feel like they're "on top" of the current technological trend. Puh-leeze

    I think the author of this rant has forgotten what happens when you democratize a technology and make it available to "very mediocre minds."

  • yes, you could and did.

    -----

  • by Anonymous Coward
    Forget Userfriendly, where can I get some nice Marvel comics online?

    Sure we're good at illegally swapping songs, but what about other media formats?
  • by gss ( 86275 )
    There's already a Dilbert search here [bfmartin.com]. This has come in handy a few times for me already.
  • by Fervent ( 178271 ) on Wednesday April 18, 2001 @06:29PM (#280992)
    Free-range search, comics copyrights... this doesn't seem to mix.

    Unless we're talking only indy artists (I doubt United Features Syndicate would want Peanuts strips easily travelling, and then being searched, on the web).

  • By the Great Spirit, do we really need another XML grammar?

    You do realize that's what XML is about, right? By itself, XML is no more useful than plain old SGML (though the syntax is nicer). Without grammars, XML is pointless for sharing data. Sure, you can use XML to do menial little things like handle configuration for an application, but where it really shines is the ability to specify a set of rules for makring up different types of data. Having multiple grammars Just Makes Sense (tm), as a single grammar can't be expected to gracefully handle all the many different applications for XML.

    As for server downtime causing parser problems, I see two ways around it -- either distribute your schema so that others can download it and use it locally with their parsers, or have some method of "certifying" schemas, which would then be hosted somewhere stable like w3c.org. As the latter most likely won't happen save for the most visible of schemas, I think the former has the most potential. Sure, there are potential versioning problems, but those can be worked around.

  • by ywwg ( 20925 ) on Wednesday April 18, 2001 @06:35PM (#280994) Homepage
    I always thought it would be cool if someone would create a funny-page service. You pay X cents per month or whatever, and they make you a customized web page that simple displays all of the comics you specify for thay day. Then I wouldn't have to load tons of megs worth of pages just to get my ozy and millie [ozyandmillie.org] and penny arcade [penny-arcade.com] fix.
  • by DESADE ( 104626 ) <slashdot@nOsPAm.bobwardrop.com> on Wednesday April 18, 2001 @06:50PM (#280995)
    (SpeechBubble)Prepare to face the master...(/SpeechBubble)

    (ActionBubble)POW!!!(/ActionBubble)

    (ActionBubble>ZAP!!!(/ActionBubble)

    (ActionBubble>BANG!!(/ActionBubble)

    (SpeechBubble)You are no match for my Kung Fu skills!!!!(/SpeechBubble)

  • Microsofts ActiveCML.. or would it be CMLscript? =)

    'This is ment to be funny and is not a flame or troll..'
  • The Parking Lot Is Full archive's search engine (found at http://www.plif.com/archive/search.htm ) allows for search by Character, Character Type, Location, Theme, Elements, and Strip Type. It's pretty amazing.
    --
  • You can do just that in creating your favorite comics page [webcomics.com] at WebComics.com [webcomics.com]. Yes, ok, this site is run by me, but if you haven't seen it, now is your chance.

    We have been supporting netscape channels for both our top comics and our newest comics, and types of syndication for over 6 years, both inbound comics and out bound listings. We'd gladly support a comicsML that makes sense.

    We've already seen that there are lots of issues with providing a viable living for online cartoonists. I don't know if this is the answer, or even part of the answer, but I'm all for taking a look.

  • by Smoking Joe ( 218801 ) on Wednesday April 18, 2001 @06:40PM (#280999)
    By the Great Spirit, do we really need another XML grammar? Do we really need another obscure specification sitting on another server that will be down 10% of the time and cause parsers to choke, programs to hang, and tech-support desks to light up like Christmas trees.

    I'm sorry to go off on such a rant, but I am SO tired of everything being done in an XML format. It's not that it's a particularly great solution, it's just that it's the new hot standard. Furthermore, let's face it, XML is real easy. So easy that very mediocre minds can grasp it and feel like they're "on top" of the current technological trend.

    Puh-leeze

    As a result we now have a plethora of half-baked, almost-finished grammar specifications littering the internet landscape and plugging up the W3C standards pipelines.

    I'm making a predication. Most of these standards will either (1) be forgotten or (2) be rushed through and signed off as standards. I hope and meditate for the first.

    XML is great for some types of data, but it's advocates are so blinded by its simplicity and consistency they overlook flaws immediately obvious to more experienced developers. Despite the press, XML is NOT that easy to parse. The same hassles we experience with HTML parsers are magnified tenfold. Furthermore, it often depends on grammar definitions that reside on remote servers. This introduces all the hassles of network-based programming into what should be simple standalone client applications. Finally, it's big. I mean REAL big. Oh, you can zip it? Great, let me run out and link the zip libraries into my application. What? There's licensing issues? Well, what do I do know?

    Please, for pete's sake, when you feel the temptation to create another XML grammar, think about what you are doing. Just say no. Your users will thank you.
  • Could someone please explain to me what the deal is with User Friendly? IMHO, it's rarely funny, hasn't been original since the birth of the Dust Puppy... I mean, it's a geek-oriented cartoon that focuses on geek issues, but it's still not really that funny.

    Give me Sluggy Freelance.

    ----

  • I would like to make a DTD that handles animation, not just panels. Dope Dragon [dopedragon.co.uk]. Is a great flash site, and it would be really sweet if you could write out an XML file, take some graphics files, and convert them into animation. Anyone know of anything that might help that process along?
    I would write the DTD to define backgrounds or layers of images and then plot their movement. If you could define songs or sounds for elements, and then define the timing of the element, you could put animations together in a format that could be easier to write than, say a POVRay file, with pretty cool and consistent content in less time.
    Its a bit like scripting a scene rather than drawing it, but it makes me think more of Sandman [mayhem.com] comic than a Piranha Club. [piranhaclub.com]
  • > I'm sorry to go off on such a rant, but I am SO tired of everything being done in an XML format.

    FWIW (not much, really), I did exactly one hobby project in XML. Yech.

    I switched to Guile [gnu.org] immediately afterward. You can use it just like a ML if that's all you want to do, and you'll find it way easy to parse. As an added bonus, you can embed code in your data/documents/stylesheets if that's what you want. (Watchout for viruses, though.)

    --
  • In the future, even Photoshop will store its data in XML, and there will be 15 overlapping DTD's for any data you want to exchange. I don't think it's any different than the proprietary Netscape tags that "ruined" HTML and spurred the creation of XML in the first place.

    --

  • by schon ( 31600 ) on Wednesday April 18, 2001 @07:04PM (#281004)
    I doubt United Features Syndicate would want Peanuts strips easily travelling, and then being searched, on the web

    United Media may not want that, but the other major comic syndicate (United Express, IIRC) seems to have a good attitude about it...

    Both syndicates have always had 'one month' of each strip available - but last year the Uexpress website (www.uexpress.com) made a drastic change..

    Last November, they put all of their comics online in a 'back issue' format.. instead of only showing one month of strips, you can go back all the way to 1996 (or whenever their website started carrying the strip - Duplex goes back to August of 96) - Calvin and Hobbes is being carried in its' entirety (more or less, they are revealing one at a time - offset by 11 years of the original strip date, so today's strip is from April 18, 1990; but it starts at November 17, 1985)

    Contrast this with BC or Meg, which are so paranoid, they obfusicate the strip filename in a lame attempt to prevent someone from using a robot to download the strip.

    You may not be able to get dilbert or Peanuts, but it wouldn't surprise me if Uexpress.com indexed their comics like this.
  • by Bonker ( 243350 ) on Wednesday April 18, 2001 @07:57PM (#281005)
    I can't account for everything a comics artist can pull off, of course, but I did try to cover the major, conventional visual idioms that have developed in Western comics over the last century.

    I think this line pretty much speaks for itself, but I will raise a few more points. The internet has allowed comics to pretty firmly break the traditional limitations of print. This DTD seems to want to codify everything inside those old limitations. That's a pretty limiting point of view, I think.

    Where are the tags to show art that crosses multiple panels? Where are the tags to show 'visual' thought bubbles. Where is the anime-style giant sweatdrop tag? Where are the tags to show 'emotional' sound effects, as are often displayed in manga and manga-based comics?

    Unfortuneately, this DTD pretty firmly ignores everything that doesn't go along with western newspaper-style comics, despite the fact that the author wants to let people break out of those old traditions.

    Bzzt! So sorry, but you lose! Please play again, McIntosh-san!
  • XML is a standard way of marking up data using nested tags, but it doesn't in any way remove the "protrietary" nature of the data itself.

    So you're right, this isn't any different than proprietary browser tags, but why would you expect it to be? Using XML to describe your data doesn't mean that you need to submit yourself to a standards body for approval.

    I hear all sorts of people make the absurd statement that their application is XML compliant and therefore somehow more "open". Why someone would believe this is beyond me.

    XML-based standards are another thing altogether. For example, SOAP is a (proposed) standard that is represented using XML, but the fact that it uses XML doesn't make it a standard.

    Invisible Agent
  • Will it allow me to magically recreate Famke Jensen by wearing a bra on my head and hooking my computer to one of her action figures, thereby getting me into all kinds of crazy hijinks and turning my brother into a Jaba The Hut type creature?

  • I always thought it would be cool if someone would create a funny-page service. You pay X cents per month or whatever, and they make you a customized web page that simple displays all of the comics you specify for thay day. Then I wouldn't have to load tons of megs worth of pages just to get my ozy and millie and penny arcade fix.

    You can do this with a neat Perl program called NewsClipper [newsclipper.com]. There's support for a ton of comics [newsclipper.com] and it's really easy to use.

    It's not just for comics, actually. It can grab headlines from tons of sites - news, weather, games, technology (/. included). It's a nice program.
  • by Ergo2000 ( 203269 ) on Wednesday April 18, 2001 @07:59PM (#281009) Homepage

    By the Great Spirit, do we really need another XML grammar?

    It's a schema (unfortunately apparently just a DTD). Backgrounder (which is probably unnecessary for you but for others that will misread your message and assume you are implying that there's all these crazy "standards" for XML) : XML is merely the basic rules by which the data is encapsulated, but without agreeing on a standard set of data organization standards (schemas) you really haven't acheived much (and this is something that most XML zealots and detractors fail to understand). If I said "Give me your resume in that new whiz bang `XML format'" I will have achieved nothing and would get a huge mess of sloppy data piles that would have to be analyzed, etc. One might be a binary Word document enclosed in the root tag, while another one might be heirarchial with tonnes of attributes, etc ("object oriented"). If on the other hand I said "Give me your resume conforming to the schema blah blah (giving a namespace like http://www.hr-xml.org/blahblah.xsd) you will know EXACTLY the format that your data should be encapsulated in, that the xsd:timeInstant field is ISO 8601, that the character set can be encapsulated just so, that the character field must follow specific rules, that it must have this set of fields in this order : I can then build a validation engine (that will have a local copy of that schema obviously : I can't see any situation where you'd be working with remote schemas. At most you will view it as a namespace. Schemas once published become like a COM interface : immutable, and when I say that my program conforms to MonkeyShema 1.0 at the namespace location of blah blah then I have that intrinsincally in the logic of the program and noway would I do a get of that schema everytime I wanted to parse something) that says "Does this conform to the rules?" and from there it can parse through it sucking out the values into the HR database. XML + XSD is the standard, and an absolutely brilliant one, that despite the frothy rantings of critics, is incredibly valuable. XML+XSD+XSLT is offering a solution that the industry has never had, certainly not this evolved.

    As mentioned though the true power of XML is really in the schemas : The standard way of defining the data (see http://www.w3.org/XML/Schema [w3.org]). When people have such a clearly defined, standard method of describing communications between two products that is of immeasurable value. The idea behind each of these schema standards is to do exactly that : Start agreeing on some basic standard schemas. See Biztalk.org [biztalk.org] for examples.

    Your opposition sounds primarily to be fear of change (which is one of the most imposing software development problems). XML+XPath+XSLT+XSD is quite a load to learn, so firstly I take issue with your claim that XML is "simple" : Can it be simple to start into? Absolutely. Just like C can be easy to start into.

    int main(int argc, char *argv[]) {
    &nbsp printf("Hello world!\n\r");
    };

    Does that diminish the power of C? Not in the slightest. XML represents a great leap forward in our ability to describe the data that we pass back and forth, and the standards are of enormous value.

    BTW: Obviously eventually some fully spec'd XML compression will be standardized, such as XMill [att.com]. XML is heavily compressible : Often, paradoxically, moreso than the same data stored in a proprietary format. However it is usually a moot point because XML usually comes into play where no existing communications were taking place.

    Cheers!

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...