Skip to content

Commit

Permalink
control flag for conventions and fixed glossary
Browse files Browse the repository at this point in the history
  • Loading branch information
Dragos0000 committed Sep 2, 2024
1 parent 71ba16c commit 150b9c1
Show file tree
Hide file tree
Showing 13 changed files with 449 additions and 413 deletions.
8 changes: 7 additions & 1 deletion src/html-conventions-lib/association-html-conventions.xsl
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,14 @@
</xd:doc>

<xsl:template match="connector[./properties/@ea_type = 'Association']">
<!-- Variables for the prefixes in source and target -->
<xsl:variable name="sourcePrefix" select="fn:substring-before(./source/model/@name, ':')"/>
<xsl:variable name="targetPrefix" select="fn:substring-before(./target/model/@name, ':')"/>

<xsl:variable name="associationChecks" as="item()*">
<xsl:if test="f:checkIfConnectorTargetAndSourceElementsExists(.)">

<xsl:if
test="$generateReusedConceptsConventionsReport or ($sourcePrefix = $internalModelPrefixesList and $targetPrefix = $internalModelPrefixesList)">
<!-- Start of common connectors checkers rules -->
<xsl:call-template name="connectorNamingFormat">
<xsl:with-param name="connector" select="."/>
Expand Down
163 changes: 83 additions & 80 deletions src/html-conventions-lib/class-attributes-html-conventions.xsl
Original file line number Diff line number Diff line change
Expand Up @@ -32,85 +32,88 @@
</xsl:variable>

<xsl:variable name="classAttributeChecks" as="item()*">
<xsl:if
test="$generateReusedConceptsConventionsReport or fn:substring-before($classAttributeName, ':') = $internalModelPrefixesList">

<!-- Start of common checkers rules -->
<xsl:call-template name="namingFormat">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingLocalSegmentName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="undefinedPrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNameLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidFirstCharacterInLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="delimitersInTheLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingDescription">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'classAttribute'"/>
</xsl:call-template>
<xsl:call-template name="stereotypeProvided">
<xsl:with-param name="elementType" select="'classAttribute'"/>
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="unknownStereotypeProvided">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'classAttribute'"/>
</xsl:call-template>
<xsl:call-template name="invalidTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagValue">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingPrefixTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="namePlural">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="elementUniqueName">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="isAttribute" select="fn:true()"/>
</xsl:call-template>
<!-- End of common checkers rules -->
<!-- Start of specific checker rules-->
<!-- Start of common checkers rules -->
<xsl:call-template name="namingFormat">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingLocalSegmentName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="undefinedPrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNameLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidFirstCharacterInLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="delimitersInTheLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingDescription">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'classAttribute'"/>
</xsl:call-template>
<xsl:call-template name="stereotypeProvided">
<xsl:with-param name="elementType" select="'classAttribute'"/>
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="unknownStereotypeProvided">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'classAttribute'"/>
</xsl:call-template>
<xsl:call-template name="invalidTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagValue">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingPrefixTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="namePlural">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="elementUniqueName">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="isAttribute" select="fn:true()"/>
</xsl:call-template>
<!-- End of common checkers rules -->
<!-- Start of specific checker rules-->

<xsl:call-template name="classAttributeNameStartsWithLowerCase">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeMultiplicityIncorrectFormat">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeIncorrectDatatype">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeMissingMultiplicity">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeNonPublic">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<!-- End of specific checker rules-->
<xsl:call-template name="classAttributeNameStartsWithLowerCase">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeMultiplicityIncorrectFormat">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeIncorrectDatatype">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeMissingMultiplicity">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<xsl:call-template name="classAttributeNonPublic">
<xsl:with-param name="classAttribute" select="."/>
</xsl:call-template>
<!-- End of specific checker rules-->
</xsl:if>
</xsl:variable>
<xsl:if test="boolean($classAttributeChecks)">
<xsl:choose>
Expand All @@ -126,9 +129,9 @@
<xsl:copy-of select="$classAttributeChecks"/>
</xsl:otherwise>
</xsl:choose>




</xsl:if>
</xsl:template>
Expand Down
2 changes: 2 additions & 0 deletions src/html-conventions-lib/class-attributes-with-same-name.xsl
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@

<xsl:for-each select="$distinctNames">
<xsl:sort select="." lang="en"/>
<xsl:if test="$generateReusedConceptsConventionsReport or fn:substring-before(., ':') = $internalModelPrefixesList">
<xsl:if test="fn:count(f:getClassAttributeByName(., $root)) > 1">
<xsl:variable name="attributeChecks" as="item()*">
<xsl:call-template name="checkMultiplicityOfAttributesWithSameName">
Expand Down Expand Up @@ -61,6 +62,7 @@
</xsl:choose>
</xsl:if>
</xsl:if>
</xsl:if>
</xsl:for-each>
</xsl:template>

Expand Down
159 changes: 81 additions & 78 deletions src/html-conventions-lib/class-html-conventions.xsl
Original file line number Diff line number Diff line change
Expand Up @@ -25,96 +25,99 @@


<xsl:template match="element[@xmi:type = 'uml:Class']">
<xsl:variable name="class">
<xsl:variable name="className">
<xsl:call-template name="getClassName">
<xsl:with-param name="class" select="."/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="classConventions" as="item()*">
<!-- Start of common checkers rules -->
<xsl:call-template name="namingFormat">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingLocalSegmentName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="undefinedPrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNameLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidFirstCharacterInLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="delimitersInTheLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingDescription">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'class'"/>
</xsl:call-template>
<xsl:call-template name="stereotypeProvided">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'class'"/>
</xsl:call-template>
<xsl:call-template name="unknownStereotypeProvided">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'class'"/>
</xsl:call-template>
<xsl:call-template name="invalidTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagValue">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingPrefixTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="namePlural">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="nonPublicElement">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="elementUniqueName">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="isAttribute" select="fn:false()"/>
</xsl:call-template>

<!-- End of common checkers rules -->
<!-- Start of specific checker rules-->
<xsl:call-template name="classIsNotPascalNamed">
<xsl:with-param name="class" select="."/>
</xsl:call-template>
<xsl:call-template name="classUnderspecified">
<xsl:with-param name="class" select="."/>
</xsl:call-template>
<xsl:call-template name="classDisconnected">
<xsl:with-param name="class" select="."/>
</xsl:call-template>
<!-- End of specific checker rules-->
<xsl:if
test="$generateReusedConceptsConventionsReport or fn:substring-before($className, ':') = $internalModelPrefixesList">
<!-- Start of common checkers rules -->
<xsl:call-template name="namingFormat">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingLocalSegmentName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNamePrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="undefinedPrefix">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidNameLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="invalidFirstCharacterInLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="delimitersInTheLocalSegment">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingDescription">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'class'"/>
</xsl:call-template>
<xsl:call-template name="stereotypeProvided">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'class'"/>
</xsl:call-template>
<xsl:call-template name="unknownStereotypeProvided">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="elementType" select="'class'"/>
</xsl:call-template>
<xsl:call-template name="invalidTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagValue">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="missingPrefixTagName">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="namePlural">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="nonPublicElement">
<xsl:with-param name="element" select="."/>
</xsl:call-template>
<xsl:call-template name="elementUniqueName">
<xsl:with-param name="element" select="."/>
<xsl:with-param name="isAttribute" select="fn:false()"/>
</xsl:call-template>

<!-- End of common checkers rules -->
<!-- Start of specific checker rules-->
<xsl:call-template name="classIsNotPascalNamed">
<xsl:with-param name="class" select="."/>
</xsl:call-template>
<xsl:call-template name="classUnderspecified">
<xsl:with-param name="class" select="."/>
</xsl:call-template>
<xsl:call-template name="classDisconnected">
<xsl:with-param name="class" select="."/>
</xsl:call-template>
<!-- End of specific checker rules-->
</xsl:if>
</xsl:variable>
<xsl:variable name="classAttributeConventions" as="item()*">
<xsl:apply-templates select="attributes/attribute"/>
</xsl:variable>
<xsl:if test="boolean($classConventions) or boolean($classAttributeConventions)">
<xsl:choose>
<xsl:when test="$reportType = 'HTML'">
<h2 id="{$class}">
<xsl:value-of select="$class"/>
<h2 id="{$className}">
<xsl:value-of select="$className"/>
</h2>
<section>
<xsl:if test="boolean($classConventions)">
Expand Down
Loading

0 comments on commit 150b9c1

Please sign in to comment.