WICOM
 All Data Structures Namespaces Files Functions Variables Pages
Public Member Functions | Protected Member Functions | Protected Attributes
UMLJSONDocument Class Reference
Inheritance diagram for UMLJSONDocument:
JSONDocument

Public Member Functions

 __construct ()
 
 to_json ()
 
 set_prefixes ($prefixes)
 
 set_ontologyIRI ($ontologyIRI)
 
 get_ontologyIRI ()
 
 insert_class_without_attr ($classname)
 
 insert_attribute ($attr, $class, $datatype)
 
 insert_subsumption ($classes, $parent, $constraints=[])
 
 insert_relationship ($classes, $name, $cardinalities, $roles)
 
 get_classfrom_bassoc ($b_assoc)
 
 get_classto_bassoc ($b_assoc)
 
 edit_cardinalities ($bassoc_o, $r_cards, $l_cards)
 
 get_bassoc_name ($b)
 
 insert_withclass_relationship ($classes, $name, $assoc_class, $cardinalities, $roles)
 
 same_subsumption ($sub1, $sub2)
 
 get_subs_links ($json)
 
 same_b_assoc ($assoc1, $assoc2)
 
 same_wcb_assoc ($assoc1, $assoc2)
 
 get_bassoc_links ($json)
 
 get_wClassassoc_links ($json)
 
- Public Member Functions inherited from JSONDocument
 to_json ()
 

Protected Member Functions

 normalise_cards ($card)
 

Protected Attributes

 $classes = []
 
 $links = []
 
 $content = NULL
 

Detailed Description

Json structure for UML digrams to be imported in crowd

{"classes":[ {"name":"Person","attrs":[{"name":"dni","datatype":"String"}, {"name":"firstname","datatype":"String"}, {"name":"surname","datatype":"String"}, {"name":"birthdate","datatype":"Date"}], "methods":[], "position":{"x":20,"y":20}}, {"name":"Student","attrs":[{"name":"id","datatype":"String"}, {"name":"enrolldate","datatype":"Date"}], "methods":[], "position":{"x":491,"y":107}}, {"name":"Class1","attrs":[], "methods":[], "position":{"x":1025,"y":104}}], "links":[ {"name":"r1","classes":["Student"], "multiplicity":null, "roles":[null,null], "type":"generalization", "parent":"Person", "constraint":[]}, {"name":"R1","classes":["Student","Class1"], "multiplicity":["2..4","1..*"], "roles":["e","c"], "type":"association"}] }

array(2) { ["classes"]=> array(3) { [0]=> array(4) {["name"]=>string(6) "Person" ["attrs"]=> array(4) { [0]=> array(2) { ["name"]=> string(3) "dni" ["datatype"]=> string(6) "String" } [1]=> array(2) { ["name"]=> string(9) "firstname" ["datatype"]=> string(6) "String" } [2]=> array(2) { ["name"]=> string(7) "surname" ["datatype"]=> string(6) "String" } [3]=> array(2) { ["name"]=> string(9) "birthdate" ["datatype"]=> string(4) "Date" } } ["methods"]=> array(0) { } ["position"]=> array(2) { ["x"]=> int(20) ["y"]=> int(20) } } [1]=> array(4) { ["name"]=> string(7) "Student" ["attrs"]=> array(2) { [0]=> array(2) { ["name"]=> string(2) "id" ["datatype"]=> string(6) "String" } [1]=> array(2) { ["name"]=> string(10) "enrolldate" ["datatype"]=> string(4) "Date" } } ["methods"]=> array(0) { } ["position"]=> array(2) { ["x"]=> int(491) ["y"]=> int(107) } } [2]=> array(4) { ["name"]=> string(6) "Class1" ["attrs"]=> array(0) { } ["methods"]=> array(0) { } ["position"]=> array(2) { ["x"]=> int(1025) ["y"]=> int(104) } } } ["links"]=> array(2) { [0]=> array(7) { ["name"]=> string(2) "r1" ["classes"]=> array(1) { [0]=> string(7) "Student" } ["multiplicity"]=> NULL ["roles"]=> array(2) { [0]=> NULL [1]=> NULL } ["type"]=> string(14) "generalization" ["parent"]=> string(6) "Person" ["constraint"]=> array(0) { } } [1]=> array(5) { ["name"]=> string(2) "R1" ["classes"]=> array(2) { [0]=> string(7) "Student" [1]=> string(6) "Class1" } ["multiplicity"]=> array(2) { [0]=> string(4) "2..4" [1]=> string(4) "1..*" } ["roles"]=> array(2) { [0]=> string(1) "e" [1]=> string(1) "c" } ["type"]=> string(11) "association" } } }

Constructor & Destructor Documentation

__construct ( )

Member Function Documentation

edit_cardinalities (   $bassoc_o,
  $r_cards,
  $l_cards 
)
get_bassoc_links (   $json)
Returns
[["name" => http://crowd.fi.uncoma.edu.ar#r2, "classes" => ["http://crowd.fi.uncoma.edu.ar#Class1","http://crowd.fi.uncoma.edu.ar#Class2"], "multiplicity" => ["0..*","0..*"], "roles" => ["http://crowd.fi.uncoma.edu.ar#class1","http://crowd.fi.uncoma.edu.ar#class2"], "type" => "association"]...]
get_bassoc_name (   $b)
get_classfrom_bassoc (   $b_assoc)
get_classto_bassoc (   $b_assoc)
get_ontologyIRI ( )
get_subs_links (   $json)
Returns
[["name" => $ontologyIRI."#s1", "classes" => $classes, "multiplicity" => NULL, "roles" => [NULL,NULL], "type" => "generalization", "parent" => $parent, "constraint" => $constraints]...]
get_wClassassoc_links (   $json)
Returns
[$array_assoc = ["name" => http://crowd.fi.uncoma.edu.ar#r2, "classes" => ["http://crowd.fi.uncoma.edu.ar#Class1","http://crowd.fi.uncoma.edu.ar#Class2"], "multiplicity" => ["0..*","0..*"], "roles" => ["http://crowd.fi.uncoma.edu.ar#class1","http://crowd.fi.uncoma.edu.ar#class2"], "associated_class" => ["name" => $classname, "attrs" => [], "methods" => []], "type" => "association with class"]...]
insert_attribute (   $attr,
  $class,
  $datatype 
)
insert_class_without_attr (   $classname)
Parameters
$classname{string}
$attrs{array} [[$attname, $datatype],...,[$attnameN, $datatypeN]]

["classes"]=> array(1) { [0]=> array(3) {["name"]=>string(6) "Person" ["attrs"]=> array(4) { [0]=>array(2) {["name"]=> string(3) "dni" ["datatype"]=>string(6) "String"} [1]=>array(2) {["name"]=>string(9) "firstname"["datatype"]=>string(6) "String"} [2]=>array(2) {["name"]=>string(7) "surname"["datatype"]=>string(6) "String"} [3]=>array(2) {["name"]=>string(9) "birthdate"["datatype"]=>string(4) "Date"} } ["methods"]=>array(0) {} }

insert_relationship (   $classes,
  $name,
  $cardinalities,
  $roles 
)

["classes"]=> array(2) { [0]=> array(3) {["name"]=>string(6) "Person" ["attrs"]=>array(0) {} ["methods"]=>array(0) {} } [1]=> array(3) {["name"]=>string(6) "Student" ["attrs"]=>array(0) {} ["methods"]=>array(0) {} } } ["links"]=> array(1) { [0]=>array(5) {["name"]=>string(2) "R1" ["classes"]=>array(2) {[0]=>string(7) "Student" [1]=>string(6) "Class1" } ["multiplicity"]=>array(2) { [0]=>string(4) "2..4" [1]=>string(4) "1..*" } ["roles"]=>array(2) { [0]=>string(1) "e" [1]=>string(1) "c" } ["type"]=>string(11) "association" } }

Parameters
$name{string} "R1"
$classes{array} ["Student", "Class1"]
$multiplicity{array} ["2..4","1..*"]
$roles["e","c"]
insert_subsumption (   $classes,
  $parent,
  $constraints = [] 
)

["classes"]=> array(2) { [0]=> array(3) {["name"]=>string(6) "Person" ["attrs"]=>array(0) {} ["methods"]=>array(0) {} } [1]=> array(3) {["name"]=>string(6) "Student" ["attrs"]=>array(0) {} ["methods"]=>array(0) {} } } ["links"]=> array(1) { [0]=>array(7) {["name"]=> string(2) "r1" ["classes"]=>array(1) {[0]=>string(7) "Student"} ["multiplicity"]=>NULL ["roles"]=>array(2) {[0]=>NULL[1]=>NULL} ["type"]=>string(14) "generalization" ["parent"]=>string(6) "Person" ["constraint"]=>array(0) {} } }

Parameters
$classes{array} ["name1", "name2",...,"nameN"]
$parent{string} "parent1"
$constraints["disjont","covering"]
insert_withclass_relationship (   $classes,
  $name,
  $assoc_class,
  $cardinalities,
  $roles 
)
Parameters
$name{string} "R1"
$classes{array} ["Student", "Class1"]
$multiplicity{array} ["2..4","1..*"]
$roles["e","c"]
$assoc_class["name" => "R1", "attrs" => [], "methods" => []]
normalise_cards (   $card)
protected
same_b_assoc (   $assoc1,
  $assoc2 
)

Compare associations by domains and ranges and name from JSON generated in crowd if assoc is binary =>

{"name":"http://crowd.fi.uncoma.edu.ar#r2", "classes":["http://crowd.fi.uncoma.edu.ar#Class1","http://crowd.fi.uncoma.edu.ar#Class2"], "multiplicity":["0..*","0..*"],"roles":["http://crowd.fi.uncoma.edu.ar#class1","http://crowd.fi.uncoma.edu.ar#class2"], "type":"association"}

$array_assoc = ["name" => http://crowd.fi.uncoma.edu.ar#r2, "classes" => ["http://crowd.fi.uncoma.edu.ar#Class1","http://crowd.fi.uncoma.edu.ar#Class2"], "multiplicity" => ["0..*","0..*"], "roles" => ["http://crowd.fi.uncoma.edu.ar#class1","http://crowd.fi.uncoma.edu.ar#class2"], "type" => "association"];

if assoc has an associated class =>

{"name":"http://crowd.fi.uncoma.edu.ar#r1", "classes":["http://crowd.fi.uncoma.edu.ar#Class1","http://crowd.fi.uncoma.edu.ar#Class2"], "multiplicity":["0..*","0..*"],"roles":["http://crowd.fi.uncoma.edu.ar#class1","http://crowd.fi.uncoma.edu.ar#class2"], "associated_class":{"name":"http://crowd.fi.uncoma.edu.ar#r1", "attrs":[], "methods":[]}, "type":"association with class"};

$array_assoc = ["name" => http://crowd.fi.uncoma.edu.ar#r2, "classes" => ["http://crowd.fi.uncoma.edu.ar#Class1","http://crowd.fi.uncoma.edu.ar#Class2"], "multiplicity" => ["0..*","0..*"], "roles" => ["http://crowd.fi.uncoma.edu.ar#class1","http://crowd.fi.uncoma.edu.ar#class2"], "associated_class" => ["name" => $classname, "attrs" => [], "methods" => []], "type" => "association with class"];

same_subsumption (   $sub1,
  $sub2 
)

Compare subsumptions by parent and childs according to the standard JSON generated in crowd

{"name":"http://crowd.fi.uncoma.edu.ar#s1","parent":"http://crowd.fi.uncoma.edu.ar#Class1", "classes":["http://crowd.fi.uncoma.edu.ar#Class2"], "multiplicity":null, "roles":null, "type":"generalization", "constraint":[]}

$array_sub = ["name" => $ontologyIRI."#s1", "classes" => $classes, "multiplicity" => NULL, "roles" => [NULL,NULL], "type" => "generalization", "parent" => $parent, "constraint" => $constraints];

same_wcb_assoc (   $assoc1,
  $assoc2 
)
set_ontologyIRI (   $ontologyIRI)
set_prefixes (   $prefixes)
to_json ( )

Field Documentation

$classes = []
protected
$content = NULL
protected
$links = []
protected

The documentation for this class was generated from the following file: