Safe to have multiple product specific web-items in atlassian-plugin.xml?

So I am developing a refapp for Confluence and Bitbucket which seems to work just fine, however I noticed that the web fragments available for both products differ somewhat. So here is my question, is it okay to define multiple web panels as well as context providers for different products in the same app? This is how my atlassian-plugin.xml looks right now:

 <web-section name="Confluence App" i18n-name-key="confluence-app.name" key="confluence-app" location="system.admin" weight="1000">
    <description key="confluence-app.description">The App Plugin</description>
    <label key="confluence-app.label"/>
  </web-section>
  <web-item name="Confluence App Configuration" i18n-name-key="confluence-app-configuration.name" key="confluence-app-configuration" section="system.admin/confluence-app" weight="1000">
    <description key="confluence-app-configuration.description">The App Configuration Plugin</description>
    <label key="confluence-app-configuration.label"/>
    <link linkId="confluence-app-configuration-link">/plugins/servlet/customapp/configure</link>
  </web-item>
  <web-item name="Confluence App Plugins" i18n-name-key="confluence-app-plugins.name" key="confluence-app-plugins" section="system.admin/confluence-app" weight="1000">
    <description key="confluence-app-plugins.description">The App Plugin</description>
    <label key="confluence-app-plugins.label"></label>
    <link linkId="confluence-app-plugins-link">/plugins/servlet/customapp/plugins</link>
  </web-item>

  <web-section name="Bitbucket App" i18n-name-key="bitbucket-app.name" key="bitbucket-app" location="atl.admin" weight="1000">
    <description key="bitbucket-app.description">The App Plugin</description>
    <label key="bitbucket-app.label"/>
  </web-section>
  <web-item name="Bitbucket App Configuration" i18n-name-key="bitbucket-app-configuration.name" key="bitbucket-app-configuration" section="atl.admin/bitbucket-app" weight="1000">
    <description key="bitbucket-app-configuration.description">The App Configuration Plugin</description>
    <label key="bitbucket-app-configuration.label"/>
    <link linkId="bitbucket-app-configuration-link">/plugins/servlet/customapp/configure</link>
  </web-item>
  <web-item name="Bitbucket App Plugins" i18n-name-key="bitbucket-app--.name" key="bitbucket-app-plugins" section="atl.admin/bitbucket-app" weight="1000">
    <description key="bitbucket-app-plugins.description">The App Plugin</description>
    <label key="bitbucket-app-plugins.label"></label>
    <link linkId="bitbucket-app-plugins-link">/plugins/servlet/customapp/plugins</link>
  </web-item>

  <web-panel key="confluence-context-provider-ref" name="Top Notification area" weight="1000" location="atl.general">
    <context-provider class="com.app.ref.customapp.context.ContextProvider" deferred="true" />
    <resource name="view" type="velocity" location="/templates/template-render.vm" deferred="true" />
  </web-panel>

  <web-panel key="bitbucket-context-provider-ref" name="Top Notification area" weight="1000" location="bitbucket.notification.banner.header">
    <context-provider class="com.app.ref.customapp.context.ContextProvider" deferred="true" />
    <resource name="view" type="velocity" location="/templates/template-render.vm" deferred="true" />
  </web-panel>

Is this good practice or should I separate it into two plugins? It seems to work and I would prefer to have it as one plugin (if possible).