NAME
Ace::Model - Get information about AceDB models
SYNOPSIS
use
Ace;
my
$db
= Ace->
connect
(
-path
=>
'/usr/local/acedb/elegans'
);
my
$model
=
$db
->model(
'Author'
);
$model
;
$name
=
$model
->name;
@tags
=
$model
->tags;
"Paper is a valid tag"
if
$model
->valid_tag(
'Paper'
);
DESCRIPTION
This class is provided for access to AceDB class models. It provides the model in human-readable form, and does some limited but useful parsing on your behalf.
Ace::Model objects are obtained either by calling an Ace database handle's model() method to retrieve the model of a named class, or by calling an Ace::Object's model() method to retrieve the object's particular model.
METHODS
new()
$model
= Ace::Model->new(
$model_data
);
This is a constructor intended only for use by Ace and Ace::Object classes. It constructs a new Ace::Model object from the raw string data in models.wrm.
name()
$name
=
$model
->name;
This returns the class name for the model.
tags()
@tags
=
$model
->tags;
This returns a list of all the valid tags in the model.
valid_tag()
$boolean
=
$model
->valid_tag(
$tag
);
This returns true if the given tag is part of the model.
path()
@path
=
$model
->path(
$tag
)
Returns the path to the indicated tag, returning a list of intermediate tags. For example, in the C elegans ?Locus model, the path for 'Compelementation_data" will return the list ('Type','Gene').
asString()
$model
->asString;
asString() returns the human-readable representation of the model with comments stripped out. Internally this method is called to automatically convert the model into a string when appropriate. You need only to start performing string operations on the model object in order to convert it into a string automatically:
"Paper is unique"
if
$model
=~/Paper ?Paper UNIQUE/;
SEE ALSO
AUTHOR
Lincoln Stein <lstein@w3.org> with extensive help from Jean Thierry-Mieg <mieg@kaa.crbm.cnrs-mop.fr>
Copyright (c) 1997-1998, Lincoln D. Stein
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.