[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: an object model for cataloging vintage computer material



On Aug 12, 5:37 pm, mdj <mdj....@gmail.com> wrote:
> jonnosan wrote:
> > EXCLUSIONS / FUTURE ENHANCEMENTS
> > - RDF (it looks to be easy to map this object model in/out of RDF, but
> > adds a layer of indirection that makes the resulting  markup look more
> > confusing)
>
> I find the (admittedly Teleological) idea of the Semantic Web emerging
> out the need for the IT industry to catalogue its own history to be
> quite pleasing.
>
> I think it's important to realise that at the level of abstraction
> you're taking your model to, you really are blurring the line between
> a conventional relational data model and an ontology to the point
> where you may as well just make the leap - it'll make it far easier to
> maintain in the future.

I think there's a tradeoff there between making the markup language
definition easy to maintain and making documents written in the markup
language easy to create and maintain. I'm trying to keep the markup
itself simple enough that documents can be pretty easily created and
consumed.
>
> There also seems to be some confusion between the concept of
> cataloging ones own collection and cataloging the collectible stuff?

Well spotted :-).

> Correct me if I'm mistaken, but I thought the end goal here was to
> produce a definitive information source of all the "stuff". Figuring
> out an effective way to collate all the information via those indexing
> their own collections is the essential challenge, and it sounds like a
> great deal of fun!

My end goal is definately to enable (and participate in, but not do
solo) the creation of a meta-catalogue. But I need some data to seed
that meta-catalogue with, so I'm trying to build a language that meets
my immediate requirements and hoping it can be useful for the larger
project as well.

I've currently got the object model coded up in ruby, and some code to
serialize/deserialize to XML. I'm now working on a DSL some I can make
a catalogue entry with something that looks like this:

application
:name=>"temple of apshai",
:description=>"The game puts the player in the role of a lone
adventurer, exploring the mysterious ruins of the Temple of Apshai.
The player can investigate room after room of a dungeon setting
seeking treasure and monsters to defeat. Like many early role-playing
games, Temple of Apshai has statistics for the player which increase
based on experience (rewarded for defeating monsters and accruing
treasure). Along the way, the player can discover and use powerful
weapons and armor to help them defeat the sinister inhabitants of the
ancient ruins.",
:publisher=>"Epyx",
:authors=>["Jeff Johnson","Jon Freeman","J. W. Connelley","Michael
Farren"],
:topic=>"Games/Entertainment :: Role-Playing",
:original_license_type=>"LicenseType::Commercial",
:current_license_type=>"LicenseType::Abandonware",
:minimum_ram=>"48KB"
:known_compatible_system_models=>["SystemModel::Apple_II_Plus","SystemModel::Apple_IIe"]
:known_incompatible_system_models=>["SystemModel::Apple_II"]

and have the XML made up automagically. A sample xml document is at
http://www.jamtronix.com/vcmml/manifest1.xml

My current road map is this:

1) complete ruby code for XML serialization/deserialiazation (90%
complete)
2) create a simple domain specific language (DSL) for creating an
archive file (e.g. ZIP file) consisting of a disk image, some related
resources such as screen shots, and an XML manifest document that
describes all the resources in the zip file + other related resources
on the web (e.g. wikipedia pages) (20 % complete)
3) create a collection of archive files (initially from games I've
cracked myself) and upload to my own site or other web archives e.g.
Asimov. (not started)
4) write up and post docs explaining how all of the above work, in the
hope that authors of emulators and other tools get interested enough
to support the archive  and/or manifest formats (5% complete).
5) if other people do actually start using these formats, then build a
web site that will import manifest documents, and create a searchable/
browsable catalogue of online resources (10% complete).

I think I'm about 3 months away from getting steps  1-4 complete,
assuming I stay interested that long :-)