NAME

FAIR::Profile::Class - A FAIR Class is a meta representation of a data resources Class

VERSION

version 0.41

SYNOPSIS

use FAIR::Profile::Class;
use FAIR::Profile::Property;

my $ProfileClass = FAIR::Profile::Class->new(
   class_type => DCAT."dataset",  # DCAT is an exported constant
   URI => "http://example.org//ProfileClasses/ThisClass.rdf",
   label => "core metadata for the thesis submission"
  );

my $TitleProperty = FAIR::Profile::Property->new(
   property_type => DCT.'title', # DCT is an exported constant
   allow_multiple => "false",
);
$TitleProperty->set_RequirementStatus('required');
$TitleProperty->add_ValueRange(XSD."string");
$ProfileClass->add_Property($TitleProperty);

DESCRIPTION

DCAT Class describes a group of metadata elements that should be associated with a given information entity. They ARE NOT containers for this metadata, they only describe what that metadata should look like (meta-meta-data :-) )

Effectively, this module groups-together a set of properties and their value-constraints.

NAME

FAIR::Profile::Class - a module representing a FAIR Profile Class

AUTHORS

Mark Wilkinson (markw at illuminae dot com)

METHODS

new

 Title : new
 Usage : my $Class = FAIR::Profile::Class->new();
 Function: Builds a new FAIR::Profile::Class
 Returns : FAIR::Profile::Class
 Args : label => $string
	class_type => $URI (possibly an OWL class URI)
	URI => $URI (optional - a unique URI will be auto-generated)

label

Title : label
Usage : $label = $Class->label($label);
Function: get/set the RDF label for this object when serialized
Returns : string
Args : string

onClassType

Title : onClassType
Usage : $class_type = $Class->onClassType($class_type);
Function: get/set the class type (should be a URI, e.g. of an ontology class)
Returns : string
Args : string

URI

Title : URI
Usage : $uri = $Class->URI($uri);
Function: get/set the URI for this Class - the URI in the RDF
Returns : string  (should be a URI)
Args : string   (should be a URI)
notes:  if this is not supplied, a unique URI will be automatically generated

add_Property

Title : add_Property
Usage : $Class->add_Property($Property);
Function: add a new FAIR::Profile::Property to the Profile Class
Returns : boolean (1 for success)
Args : FAIR::Profile::Property

hasProperty

Title : hasProperty
Usage : $Class->hasProperty();
Function: Retrieve all properties of the Class
Returns : listref of FAIR::Profile::Property objects
Args : none

AUTHOR

Mark Denis Wilkinson (markw [at] illuminae [dot] com)

COPYRIGHT AND LICENSE

This software is Copyright (c) 2016 by Mark Denis Wilkinson.

This is free software, licensed under:

The Apache License, Version 2.0, January 2004