diff --git a/gcube-model-facet.rst b/gcube-model-facet.rst index 1a1b1bf..1f5f2ea 100644 --- a/gcube-model-facet.rst +++ b/gcube-model-facet.rst @@ -22,13 +22,13 @@ AccessPointFacet captures information on an 'access point' of a resource, i.e., +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | endpoint | String | ``Mandatory:true`` ``ReadOnly:true`` ``NotNull:true`` | The URI which characterises the specific endpoint instance. | +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | authorization | :ref:`Property ` | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Contains authorisation information. e.g., a token, the couple username:password, etc. | - +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | protocol | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The high-level protocol used by the access point. The String could contain the version if needed. e.g., Web Map Service (WMS) and not HyperText Transfer Protocol (HTTP) which is already contained in the URI. | + | description | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A human-oriented text accompanying the access point. | +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | entryName | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A distinguishing string to be used by clients to identify the access point of interest. | +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | description | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A human-oriented text accompanying the access point. | + | authorization | :ref:`Property ` | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Contains authorisation information. e.g., a token, the couple username:password, etc. | + +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | protocol | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The high-level protocol used by the access point. The String could contain the version if needed. e.g., Web Map Service (WMS) and not HyperText Transfer Protocol (HTTP) which is already contained in the URI. | +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | **Known Usage** | +------------------------------------------+--------------------------------+----------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -68,10 +68,10 @@ This facet is expected to capture information on which action perform while a re +----------------------------------------+------------------------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ | type | :ref:`EnumStringProperty ` | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | Type of action | +----------------------------------------+------------------------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ - | command | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The command to execute. | - +----------------------------------------+------------------------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ | source | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:true`` | From where to download the action. | +----------------------------------------+------------------------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ + | command | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The command to execute. | + +----------------------------------------+------------------------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ | **Known Usage** | +----------------------------------------+------------------------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ | **Source** | **Relation** | **Multiplicity** | **Target** | **Description** | @@ -142,10 +142,10 @@ CapabilityFacet captures a defined facility for performing a specified task supp +----------------------------+--------------------------------+----------------------------------------------------------+-------------------------------------------------+------------------------------------------------+ | name | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | The distinguishing name of the capability. | +----------------------------+--------------------------------+----------------------------------------------------------+-------------------------------------------------+------------------------------------------------+ - | qualifier | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A string used to specialise the capability. | - +----------------------------+--------------------------------+----------------------------------------------------------+-------------------------------------------------+------------------------------------------------+ | description | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A human oriented description of the capability. | +----------------------------+--------------------------------+----------------------------------------------------------+-------------------------------------------------+------------------------------------------------+ + | qualifier | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A string used to specialise the capability. | + +----------------------------+--------------------------------+----------------------------------------------------------+-------------------------------------------------+------------------------------------------------+ | **Known Usage** | +----------------------------+--------------------------------+----------------------------------------------------------+-------------------------------------------------+------------------------------------------------+ | **Source** | **Relation** | **Multiplicity** | **Target** | **Description** | @@ -240,10 +240,10 @@ ContactReferenceFacet captures information on the primary and authoritative cont +======================+================================+==========================================================+======================================================+=================+ | **Name** | **Type** | **Attributes** | **Description** | +----------------------+--------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ - | address | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A physical address | - +----------------------+--------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ | phoneNumber | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A phone number | +----------------------+--------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ + | address | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A physical address | + +----------------------+--------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ | website | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The main website | +----------------------+--------------------------------+----------------------------------------------------------+------------------------------------------------------+-----------------+ | **Known Usage** | @@ -466,12 +466,12 @@ LocationFacet captures information on a physical area characterising the resourc +--------------------+--------------------------------+----------------------------------------------------------+--------------------------------------+-----------------+ | longitude | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Longitude | +--------------------+--------------------------------+----------------------------------------------------------+--------------------------------------+-----------------+ + | country | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The English name of the country | + +--------------------+--------------------------------+----------------------------------------------------------+--------------------------------------+-----------------+ | latitude | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Latitude | +--------------------+--------------------------------+----------------------------------------------------------+--------------------------------------+-----------------+ | location | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The City name | +--------------------+--------------------------------+----------------------------------------------------------+--------------------------------------+-----------------+ - | country | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The English name of the country | - +--------------------+--------------------------------+----------------------------------------------------------+--------------------------------------+-----------------+ | **Known Usage** | +--------------------+--------------------------------+----------------------------------------------------------+--------------------------------------+-----------------+ | **Source** | **Relation** | **Multiplicity** | **Target** | **Description** | @@ -502,12 +502,12 @@ MemoryFacet captures information on computer memory equipping the resource and i +========================================+==================================================+=====================================================================================================+==================================+=================================================+ | **Name** | **Type** | **Attributes** | **Description** | +----------------------------------------+--------------------------------------------------+-----------------------------------------------------------------------------------------------------+----------------------------------+-------------------------------------------------+ + | size | Long | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | | + +----------------------------------------+--------------------------------------------------+-----------------------------------------------------------------------------------------------------+----------------------------------+-------------------------------------------------+ | used | Long | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | | +----------------------------------------+--------------------------------------------------+-----------------------------------------------------------------------------------------------------+----------------------------------+-------------------------------------------------+ | unit | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` ``Regex:^(Byte|kB|MB|GB|TB|PB|EB|ZB|YB)$`` | | +----------------------------------------+--------------------------------------------------+-----------------------------------------------------------------------------------------------------+----------------------------------+-------------------------------------------------+ - | size | Long | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | | - +----------------------------------------+--------------------------------------------------+-----------------------------------------------------------------------------------------------------+----------------------------------+-------------------------------------------------+ | **Known Usage** | +----------------------------------------+--------------------------------------------------+-----------------------------------------------------------------------------------------------------+----------------------------------+-------------------------------------------------+ | **Source** | **Relation** | **Multiplicity** | **Target** | **Description** | @@ -546,14 +546,14 @@ NetworkingFacet captures information on any (computer) network interface associa +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ | IPAddress | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | Internet Protocol (IP) Address | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ - | broadcastAddress | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Broadcast Address | + | domainName | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Domain Name | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ | hostName | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Host Name | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ - | domainName | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Domain Name | - +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ | mask | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Network Mask | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ + | broadcastAddress | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Broadcast Address | + +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ | **Known Usage** | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------+----------------------------------------------------+ | **Source** | **Relation** | **Multiplicity** | **Target** | **Description** | @@ -588,10 +588,10 @@ ProvenanceFacet captures information on provenance/lineage of the entire resourc +==========================+==================================+======================================================================================================+===========================================================================================================================================================================================================================================+====================================================+ | **Name** | **Type** | **Attributes** | **Description** | +--------------------------+----------------------------------+------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------+ - | document | :ref:`ValueSchema ` | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Provenance Document, e.g., an XML according to the reference schema. | - +--------------------------+----------------------------------+------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------+ | reference | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | The ID of the referenced resource. | +--------------------------+----------------------------------+------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------+ + | document | :ref:`ValueSchema ` | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Provenance Document, e.g., an XML according to the reference schema. | + +--------------------------+----------------------------------+------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------+ | relationship | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` ``Regex:^(wasDerivedFrom|wasGeneratedBy)$`` | Relationship with the resource indicated by ID. Please note that the provenance has not been modelled as IsRelatedTo specialization, because the source resource is not necessarly in the IS or could be deleted from the IS at any time. | +--------------------------+----------------------------------+------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------------------------------+ | **Known Usage** | @@ -732,12 +732,12 @@ SoftwareFacet captures information on any software associated with the resource. +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | version | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | The particular release of the software artifact, e.g., version in maven coordinates, the software version for retail software such as '2013-SP2' (in Microsoft™ Office 2013-SP2) | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | optional | Boolean | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Used to indicate the software optionality, e.g., optional in maven coordinates | - +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | description | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A human oriented description of the software artifact being described | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | qualifier | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | A qualifier for the software, e.g., packaging or scope in maven coordinates, target architecture for retail software such as x86 or amd64 | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | optional | Boolean | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | Used to indicate the software optionality, e.g., optional in maven coordinates | + +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | **Known Usage** | +----------------------------------------+----------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | **Source** | **Relation** | **Multiplicity** | **Target** | **Description** | @@ -836,3 +836,39 @@ Changelog: * **1.0.0**: First Version. + +.. _TemplateFacet: + +TemplateFacet +------------- + +This facet definte a template to instantiate usign the list of attributes specified + + +.. table:: **TemplateFacet** ``extends`` **Facet** + + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + | Properties | + +========================================+====================================================+========================================================+================================================================+=================+ + | **Name** | **Type** | **Attributes** | **Description** | + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + | attributes | List<:ref:`AttributeProperty `> | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | The attributes of the template to be created when instantiated | + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + | description | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | The description of the template | + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + | name | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | The name of template | + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + | **Known Usage** | + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + | **Source** | **Relation** | **Multiplicity** | **Target** | **Description** | + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + | No specific known usage for this type. | + +----------------------------------------+----------------------------------------------------+--------------------------------------------------------+----------------------------------------------------------------+-----------------+ + + +The **TemplateFacet** current version is 1.0.0. + +Changelog: + +* **1.0.0**: First Version. + diff --git a/gcube-model-property.rst b/gcube-model-property.rst index b473c96..3f2aa2a 100644 --- a/gcube-model-property.rst +++ b/gcube-model-property.rst @@ -42,10 +42,10 @@ AccessPolicy information +--------+----------------------------------+----------------------------------------------------------+-------------+ | Name | Type | Attributes | Description | +========+==================================+==========================================================+=============+ - | note | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | | - +--------+----------------------------------+----------------------------------------------------------+-------------+ | policy | :ref:`ValueSchema ` | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | | +--------+----------------------------------+----------------------------------------------------------+-------------+ + | note | String | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | | + +--------+----------------------------------+----------------------------------------------------------+-------------+ The **AccessPolicy** current version is 1.0.0. @@ -55,6 +55,42 @@ Changelog: * **1.0.0**: First Version. +.. _AttributeProperty: + +AttributeProperty +^^^^^^^^^^^^^^^^^ + +This class model as property any attrbute must be instantiated. + + +.. table:: **AttributeProperty** ``extends`` **GCubeProperty** + + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + | Name | Type | Attributes | Description | + +==============+=========+==========================================================+==========================================+ + | description | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | | + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + | max | Integer | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | | + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + | min | Integer | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | | + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + | name | String | ``Mandatory:true`` ``ReadOnly:true`` ``NotNull:true`` | The name of the Query Template Variable. | + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + | propertyType | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | | + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + | regexp | String | ``Mandatory:true`` ``ReadOnly:false`` ``NotNull:true`` | | + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + | defaultValue | Any | ``Mandatory:false`` ``ReadOnly:false`` ``NotNull:false`` | | + +--------------+---------+----------------------------------------------------------+------------------------------------------+ + + +The **AttributeProperty** current version is 1.0.0. + +Changelog: + +* **1.0.0**: First Version. + + .. _EnumStringProperty: EnumStringProperty diff --git a/src/main/java/org/gcube/informationsystem/utils/documentation/model/Documentation.java b/src/main/java/org/gcube/informationsystem/utils/documentation/model/Documentation.java index aa721c8..4f06671 100644 --- a/src/main/java/org/gcube/informationsystem/utils/documentation/model/Documentation.java +++ b/src/main/java/org/gcube/informationsystem/utils/documentation/model/Documentation.java @@ -308,7 +308,14 @@ public abstract class Documentation { stringBuffer.append("`` ``Min:"); stringBuffer.append(min); } + + Object defaultValue = propertyDefinition.getDefaultValue(); + if(defaultValue!=null) { + stringBuffer.append("`` ``Default:"); + stringBuffer.append(defaultValue.toString()); + } stringBuffer.append("``"); + return stringBuffer.toString(); }