You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@causeway.apache.org by da...@apache.org on 2023/02/28 10:33:40 UTC

[causeway-site] branch asf-site updated (4e0960165 -> ae719940e)

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a change to branch asf-site
in repository https://gitbox.apache.org/repos/asf/causeway-site.git


    from 4e0960165 adds titles to social-links
     new 76d85da0c adds asf version candidates
     new ae719940e uploads layout-v1 xsd files

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 content/_/img/home/causeway-logo.bmp               | Bin 0 -> 815438 bytes
 content/_/img/home/causeway-logo.bmp.svg           |   8 +
 content/_/img/home/causeway-logo.pptx              | Bin 0 -> 67087 bytes
 content/_/img/home/causeway-logo.pptx.svg          |   1 +
 content/applib/layout-v1/component/component.xsd   | 218 +++++++++++++++++++++
 .../layout-v1/grid/bootstrap3/bootstrap3.xsd       | 167 ++++++++++++++++
 content/applib/layout-v1/links/links.xsd           |  26 +++
 .../layout-v1/menubars/bootstrap3/menubars.xsd     |  61 ++++++
 8 files changed, 481 insertions(+)
 create mode 100644 content/_/img/home/causeway-logo.bmp
 create mode 100644 content/_/img/home/causeway-logo.bmp.svg
 create mode 100644 content/_/img/home/causeway-logo.pptx
 create mode 100644 content/_/img/home/causeway-logo.pptx.svg
 create mode 100644 content/applib/layout-v1/component/component.xsd
 create mode 100644 content/applib/layout-v1/grid/bootstrap3/bootstrap3.xsd
 create mode 100644 content/applib/layout-v1/links/links.xsd
 create mode 100644 content/applib/layout-v1/menubars/bootstrap3/menubars.xsd


[causeway-site] 01/02: adds asf version candidates

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/causeway-site.git

commit 76d85da0c3e0a59331eb84951250922fe1541043
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Thu Feb 23 16:05:57 2023 +0000

    adds asf version candidates
---
 content/_/img/home/causeway-logo.bmp      | Bin 0 -> 815438 bytes
 content/_/img/home/causeway-logo.bmp.svg  |   8 ++++++++
 content/_/img/home/causeway-logo.pptx     | Bin 0 -> 65120 bytes
 content/_/img/home/causeway-logo.pptx.svg |   1 +
 4 files changed, 9 insertions(+)

diff --git a/content/_/img/home/causeway-logo.bmp b/content/_/img/home/causeway-logo.bmp
new file mode 100644
index 000000000..01ae95e98
Binary files /dev/null and b/content/_/img/home/causeway-logo.bmp differ
diff --git a/content/_/img/home/causeway-logo.bmp.svg b/content/_/img/home/causeway-logo.bmp.svg
new file mode 100644
index 000000000..fd07bc983
--- /dev/null
+++ b/content/_/img/home/causeway-logo.bmp.svg
@@ -0,0 +1,8 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="body_1" width="605" height="449">
+
+<g transform="matrix(1.3333334 0 0 1.3333334 0 0)">
+    <image  x="0" y="0" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAl0AAAHBCAYAAABTzg6OAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAEQdSURBVHhe7d1bjFzHfefx2Uc/5nEfjQUWSIA8GMhDNi+JX4wEyGIRGFjABhZCEC0QC4sIToSFtcjSlk3boi1TsmhFshzairWWCIe2TNGkKFE0LxYvIke8mBeRGtEkRVIMLxkOObwONTzrX/s0PRr9+3Sfqjp16nR9f8BnsZHZPT091d2/rlOnzkQxYu7OzRW3z54tbhw+XMzu3NFz+dUNxfTP17bm8vp19x7L9YO/Km6dPFnM37pVPuLuZWp6plj/7qnimX2Hi4e37Co+u2bjSB7YsLVYtnNvsfro8WL/+UvF5Vu3y3vsaOZvFncvvl [...]
+</g>
+</svg>
\ No newline at end of file
diff --git a/content/_/img/home/causeway-logo.pptx b/content/_/img/home/causeway-logo.pptx
new file mode 100644
index 000000000..a207ccab3
Binary files /dev/null and b/content/_/img/home/causeway-logo.pptx differ
diff --git a/content/_/img/home/causeway-logo.pptx.svg b/content/_/img/home/causeway-logo.pptx.svg
new file mode 100644
index 000000000..2df823b8d
--- /dev/null
+++ b/content/_/img/home/causeway-logo.pptx.svg
@@ -0,0 +1 @@
+<svg width="605" height="449" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" overflow="hidden"><defs><clipPath id="clip0"><rect x="0" y="0" width="605" height="449"/></clipPath></defs><g clip-path="url(#clip0)"><rect x="0" y="0" width="605" height="449.418" fill="#FFFFFF"/><path d="M0 15.14C-1.72669e-15 6.77842 6.78722-3.44891e-15 15.1597-3.44891e-15L47.8403 0C56.2127-3.44891e-15 63 6.77842 63 15.14L63 201.579C63 209.941 56.2127 216.72 47.8403 216.72L15.159 [...]
\ No newline at end of file


[causeway-site] 02/02: uploads layout-v1 xsd files

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/causeway-site.git

commit ae719940e1b8ca19f2050552fa781068b858a835
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Tue Feb 28 10:33:29 2023 +0000

    uploads layout-v1 xsd files
---
 content/_/img/home/causeway-logo.pptx              | Bin 65120 -> 67087 bytes
 content/applib/layout-v1/component/component.xsd   | 218 +++++++++++++++++++++
 .../layout-v1/grid/bootstrap3/bootstrap3.xsd       | 167 ++++++++++++++++
 content/applib/layout-v1/links/links.xsd           |  26 +++
 .../layout-v1/menubars/bootstrap3/menubars.xsd     |  61 ++++++
 5 files changed, 472 insertions(+)

diff --git a/content/_/img/home/causeway-logo.pptx b/content/_/img/home/causeway-logo.pptx
index a207ccab3..8a9bb06d9 100644
Binary files a/content/_/img/home/causeway-logo.pptx and b/content/_/img/home/causeway-logo.pptx differ
diff --git a/content/applib/layout-v1/component/component.xsd b/content/applib/layout-v1/component/component.xsd
new file mode 100644
index 000000000..306880d91
--- /dev/null
+++ b/content/applib/layout-v1/component/component.xsd
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
+	license agreements. See the NOTICE file distributed with this work for additional
+	information regarding copyright ownership. The ASF licenses this file to
+	you under the Apache License, Version 2.0 (the "License"); you may not use
+	this file except in compliance with the License. You may obtain a copy of
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+	by applicable law or agreed to in writing, software distributed under the
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+	OF ANY KIND, either express or implied. See the License for the specific
+	language governing permissions and limitations under the License. -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
+           xmlns:lnk="http://isis.apache.org/applib/layout/links"
+           xmlns:tns="http://isis.apache.org/applib/layout/component"
+           elementFormDefault="qualified"
+           targetNamespace="http://isis.apache.org/applib/layout/component"
+           version="1.0">
+
+  <xs:import
+          namespace="http://isis.apache.org/applib/layout/links"
+          schemaLocation="../links/links.xsd"/>
+
+  <xs:element name="action" type="tns:action"/>
+
+  <xs:element name="collection" type="tns:collection"/>
+
+  <xs:element name="domainObject" type="tns:domainObject"/>
+
+  <xs:element name="fieldSet" type="tns:fieldSet"/>
+
+  <xs:element name="serviceAction" type="tns:serviceAction"/>
+
+  <xs:element name="property" type="tns:property"/>
+
+  <xs:complexType name="domainObject">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="named" type="xs:string"/>
+      <xs:element minOccurs="0" name="describedAs" type="xs:string"/>
+      <xs:element minOccurs="0" name="plural" type="xs:string"/>
+      <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+      <xs:element minOccurs="0" name="link" type="lnk:link"/>
+    </xs:sequence>
+    <xs:attribute name="bookmarking" type="tns:bookmarkPolicy"/>
+    <xs:attribute name="cssClass" type="xs:string"/>
+    <xs:attribute name="cssClassFa" type="xs:string"/>
+    <xs:attribute name="cssClassFaPosition" type="tns:cssClassFaPosition"/>
+    <xs:attribute name="namedEscaped" type="xs:boolean"/>
+    <xs:attribute name="tableDecoration" type="tns:tableDecoration"/>
+  </xs:complexType>
+
+  <xs:complexType name="action">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="named" type="xs:string"/>
+      <xs:element minOccurs="0" name="describedAs" type="xs:string"/>
+      <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+      <xs:element minOccurs="0" name="link" type="lnk:link"/>
+    </xs:sequence>
+    <xs:attribute name="bookmarking" type="tns:bookmarkPolicy"/>
+    <xs:attribute name="cssClass" type="xs:string"/>
+    <xs:attribute name="cssClassFa" type="xs:string"/>
+    <xs:attribute name="cssClassFaPosition" type="tns:cssClassFaPosition"/>
+    <xs:attribute name="hidden" type="tns:where"/>
+    <xs:attribute name="id" type="xs:string" use="required"/>
+    <xs:attribute name="namedEscaped" type="xs:boolean"/>
+    <xs:attribute name="position" type="tns:position"/>
+    <xs:attribute name="promptStyle" type="tns:promptStyle"/>
+    <xs:attribute name="redirect" type="tns:redirect"/>
+  </xs:complexType>
+
+  <xs:complexType name="serviceAction">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="named" type="xs:string"/>
+      <xs:element minOccurs="0" name="describedAs" type="xs:string"/>
+      <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+      <xs:element minOccurs="0" name="link" type="lnk:link"/>
+    </xs:sequence>
+    <xs:attribute name="objectType" type="xs:string" use="required"/>
+    <xs:attribute name="id" type="xs:string" use="required"/>
+    <xs:attribute name="namedEscaped" type="xs:boolean"/>
+    <xs:attribute name="bookmarking" type="tns:bookmarkPolicy"/>
+    <xs:attribute name="cssClass" type="xs:string"/>
+    <xs:attribute name="cssClassFa" type="xs:string"/>
+  </xs:complexType>
+
+  <xs:complexType name="fieldSet">
+    <xs:sequence>
+      <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:action"/>
+      <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:property"/>
+      <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+    </xs:sequence>
+    <xs:attribute name="name" type="xs:string"/>
+    <xs:attribute name="id" type="xs:string"/>
+    <xs:attribute name="unreferencedActions" type="xs:boolean"/>
+    <xs:attribute name="unreferencedProperties" type="xs:boolean"/>
+  </xs:complexType>
+
+  <xs:complexType name="property">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="named" type="xs:string"/>
+      <xs:element minOccurs="0" name="describedAs" type="xs:string"/>
+      <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:action"/>
+      <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+      <xs:element minOccurs="0" name="link" type="lnk:link"/>
+    </xs:sequence>
+    <xs:attribute name="cssClass" type="xs:string"/>
+    <xs:attribute name="hidden" type="tns:where"/>
+    <xs:attribute name="id" type="xs:string" use="required"/>
+    <xs:attribute name="labelPosition" type="tns:labelPosition"/>
+    <xs:attribute name="multiLine" type="xs:int"/>
+    <xs:attribute name="namedEscaped" type="xs:boolean"/>
+    <xs:attribute name="promptStyle" type="tns:promptStyle"/>
+    <xs:attribute name="renderedAsDayBefore" type="xs:boolean"/>
+    <xs:attribute name="typicalLength" type="xs:int"/>
+    <xs:attribute name="repainting" type="xs:boolean"/>
+  </xs:complexType>
+
+  <xs:complexType name="collection">
+    <xs:sequence>
+      <xs:element minOccurs="0" name="named" type="xs:string"/>
+      <xs:element minOccurs="0" name="describedAs" type="xs:string"/>
+      <xs:element minOccurs="0" name="sortedBy" type="xs:string"/>
+      <xs:element maxOccurs="unbounded" minOccurs="0" ref="tns:action"/>
+      <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+      <xs:element minOccurs="0" name="link" type="lnk:link"/>
+    </xs:sequence>
+    <xs:attribute name="cssClass" type="xs:string"/>
+    <xs:attribute name="defaultView" type="xs:string"/>
+    <xs:attribute name="hidden" type="tns:where"/>
+    <xs:attribute name="id" type="xs:string" use="required"/>
+    <xs:attribute name="namedEscaped" type="xs:boolean"/>
+    <xs:attribute name="paged" type="xs:int"/>
+    <xs:attribute name="tableDecoration" type="tns:tableDecoration"/>
+  </xs:complexType>
+
+
+  <xs:simpleType name="bookmarkPolicy">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="AS_ROOT"/>
+      <xs:enumeration value="AS_CHILD"/>
+      <xs:enumeration value="NEVER"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="cssClassFaPosition">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="LEFT"/>
+      <xs:enumeration value="RIGHT"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="where">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="EVERYWHERE"/>
+      <xs:enumeration value="ANYWHERE"/>
+      <xs:enumeration value="OBJECT_FORMS"/>
+      <xs:enumeration value="REFERENCES_PARENT"/>
+      <xs:enumeration value="PARENTED_TABLES"/>
+      <xs:enumeration value="STANDALONE_TABLES"/>
+      <xs:enumeration value="ALL_TABLES"/>
+      <xs:enumeration value="ALL_EXCEPT_STANDALONE_TABLES"/>
+      <xs:enumeration value="NOWHERE"/>
+      <xs:enumeration value="NOT_SPECIFIED"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="position">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="BELOW"/>
+      <xs:enumeration value="RIGHT"/>
+      <xs:enumeration value="PANEL"/>
+      <xs:enumeration value="PANEL_DROPDOWN"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="promptStyle">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="AS_CONFIGURED"/>
+      <xs:enumeration value="DIALOG"/>
+      <xs:enumeration value="DIALOG_SIDEBAR"/>
+      <xs:enumeration value="DIALOG_MODAL"/>
+      <xs:enumeration value="INLINE"/>
+      <xs:enumeration value="INLINE_AS_IF_EDIT"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="redirect">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="AS_CONFIGURED"/>
+      <xs:enumeration value="EVEN_IF_SAME"/>
+      <xs:enumeration value="ONLY_IF_DIFFERS"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="labelPosition">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="DEFAULT"/>
+      <xs:enumeration value="LEFT"/>
+      <xs:enumeration value="RIGHT"/>
+      <xs:enumeration value="TOP"/>
+      <xs:enumeration value="NONE"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="tableDecoration">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="NONE"/>
+      <xs:enumeration value="DATATABLES_NET"/>
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="repainting">
+    <xs:restriction base="xs:string">
+      <xs:enumeration value="REPAINT"/>
+      <xs:enumeration value="NO_REPAINT"/>
+      <xs:enumeration value="NOT_SPECIFIED"/>
+    </xs:restriction>
+  </xs:simpleType>
+</xs:schema>
diff --git a/content/applib/layout-v1/grid/bootstrap3/bootstrap3.xsd b/content/applib/layout-v1/grid/bootstrap3/bootstrap3.xsd
new file mode 100644
index 000000000..8380f737d
--- /dev/null
+++ b/content/applib/layout-v1/grid/bootstrap3/bootstrap3.xsd
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
+	license agreements. See the NOTICE file distributed with this work for additional
+	information regarding copyright ownership. The ASF licenses this file to
+	you under the Apache License, Version 2.0 (the "License"); you may not use
+	this file except in compliance with the License. You may obtain a copy of
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+	by applicable law or agreed to in writing, software distributed under the
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+	OF ANY KIND, either express or implied. See the License for the specific
+	language governing permissions and limitations under the License. -->
+<xs:schema
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+        xmlns:cpt="http://isis.apache.org/applib/layout/component"
+        xmlns:tns="http://isis.apache.org/applib/layout/grid/bootstrap3"
+        elementFormDefault="qualified"
+        targetNamespace="http://isis.apache.org/applib/layout/grid/bootstrap3"
+        version="1.0">
+
+    <xs:import
+            namespace="http://isis.apache.org/applib/layout/component"
+            schemaLocation="../../component/component.xsd"/>
+
+    <xs:import
+            namespace="http://isis.apache.org/applib/layout/links"
+            schemaLocation="../../links/links.xsd"/>
+
+    <xs:element name="clearFixHidden" type="tns:clearFixHidden"/>
+
+    <xs:element name="clearFixVisible" type="tns:clearFixVisible"/>
+
+    <xs:element name="col" type="tns:col"/>
+
+    <xs:element name="grid" type="tns:grid"/>
+
+    <xs:complexType name="grid">
+        <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="row" type="tns:row"/>
+            <xs:element maxOccurs="unbounded" minOccurs="0" name="metadataError" type="xs:string"/>
+        </xs:sequence>
+        <xs:attribute name="cssClass" type="xs:string"/>
+    </xs:complexType>
+
+    <xs:complexType name="row">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3ElementAbstract">
+                <xs:sequence>
+                    <xs:choice maxOccurs="unbounded" minOccurs="0">
+                        <xs:element ref="tns:col"/>
+                        <xs:element ref="tns:clearFixVisible"/>
+                        <xs:element ref="tns:clearFixHidden"/>
+                    </xs:choice>
+                    <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+                </xs:sequence>
+                <xs:attribute name="id" type="xs:string"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType abstract="true" name="bs3ElementAbstract">
+        <xs:sequence/>
+        <xs:attribute name="cssClass" type="xs:string"/>
+    </xs:complexType>
+
+    <xs:complexType name="col">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3RowContent">
+                <xs:sequence>
+                    <xs:element maxOccurs="unbounded" minOccurs="0" name="sizeSpan" type="tns:sizeSpan"/>
+                    <xs:element minOccurs="0" ref="cpt:domainObject"/>
+                    <xs:element maxOccurs="unbounded" minOccurs="0" ref="cpt:action"/>
+                    <xs:element maxOccurs="unbounded" minOccurs="0" name="row" type="tns:row"/>
+                    <xs:element maxOccurs="unbounded" minOccurs="0" name="tabGroup" type="tns:tabGroup"/>
+                    <xs:element maxOccurs="unbounded" minOccurs="0" ref="cpt:fieldSet"/>
+                    <xs:element maxOccurs="unbounded" minOccurs="0" ref="cpt:collection"/>
+                    <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+                </xs:sequence>
+                <xs:attribute name="id" type="xs:string"/>
+                <xs:attribute name="span" type="xs:int" use="required"/>
+                <xs:attribute name="unreferencedActions" type="xs:boolean"/>
+                <xs:attribute name="unreferencedCollections" type="xs:boolean"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType abstract="true" name="bs3RowContent">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3ElementAbstract">
+                <xs:sequence/>
+                <xs:attribute name="size" type="tns:size"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="sizeSpan">
+        <xs:all/>
+        <xs:attribute name="offset" type="xs:boolean"/>
+        <xs:attribute name="size" type="tns:size" use="required"/>
+        <xs:attribute name="span" type="xs:int" use="required"/>
+    </xs:complexType>
+
+    <xs:complexType name="tabGroup">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3ElementAbstract">
+                <xs:sequence>
+                    <xs:element maxOccurs="unbounded" minOccurs="0" name="tab" type="tns:tab"/>
+                    <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+                </xs:sequence>
+                <xs:attribute name="collapseIfOne" type="xs:boolean"/>
+                <xs:attribute name="unreferencedCollections" type="xs:boolean"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="tab">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3ElementAbstract">
+                <xs:sequence>
+                    <xs:element maxOccurs="unbounded" name="row" type="tns:row"/>
+                </xs:sequence>
+                <xs:attribute name="name" type="xs:string" use="required"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="clearFixVisible">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3ClearFix">
+                <xs:sequence/>
+                <xs:attribute name="cssDisplay" type="tns:cssDisplay" use="required"/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType abstract="true" name="bs3ClearFix">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3RowContent">
+                <xs:sequence/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:complexType name="clearFixHidden">
+        <xs:complexContent>
+            <xs:extension base="tns:bs3ClearFix">
+                <xs:sequence/>
+            </xs:extension>
+        </xs:complexContent>
+    </xs:complexType>
+
+    <xs:simpleType name="size">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="XS"/>
+            <xs:enumeration value="SM"/>
+            <xs:enumeration value="MD"/>
+            <xs:enumeration value="LG"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:simpleType name="cssDisplay">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="BLOCK"/>
+            <xs:enumeration value="INLINE"/>
+            <xs:enumeration value="INLINE_BLOCK"/>
+        </xs:restriction>
+    </xs:simpleType>
+</xs:schema>
diff --git a/content/applib/layout-v1/links/links.xsd b/content/applib/layout-v1/links/links.xsd
new file mode 100644
index 000000000..fe5d1f1ab
--- /dev/null
+++ b/content/applib/layout-v1/links/links.xsd
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
+	license agreements. See the NOTICE file distributed with this work for additional
+	information regarding copyright ownership. The ASF licenses this file to
+	you under the Apache License, Version 2.0 (the "License"); you may not use
+	this file except in compliance with the License. You may obtain a copy of
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+	by applicable law or agreed to in writing, software distributed under the
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+	OF ANY KIND, either express or implied. See the License for the specific
+	language governing permissions and limitations under the License. -->
+<xs:schema
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+        elementFormDefault="qualified"
+        targetNamespace="http://isis.apache.org/applib/layout/links"
+        version="1.0">
+
+    <xs:complexType name="link">
+        <xs:sequence>
+            <xs:element name="rel" type="xs:string"/>
+            <xs:element name="method" type="xs:string"/>
+            <xs:element name="href" type="xs:string"/>
+            <xs:element name="type" type="xs:string"/>
+        </xs:sequence>
+    </xs:complexType>
+</xs:schema>
diff --git a/content/applib/layout-v1/menubars/bootstrap3/menubars.xsd b/content/applib/layout-v1/menubars/bootstrap3/menubars.xsd
new file mode 100644
index 000000000..a9f52ecee
--- /dev/null
+++ b/content/applib/layout-v1/menubars/bootstrap3/menubars.xsd
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
+	license agreements. See the NOTICE file distributed with this work for additional
+	information regarding copyright ownership. The ASF licenses this file to
+	you under the Apache License, Version 2.0 (the "License"); you may not use
+	this file except in compliance with the License. You may obtain a copy of
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+	by applicable law or agreed to in writing, software distributed under the
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+	OF ANY KIND, either express or implied. See the License for the specific
+	language governing permissions and limitations under the License. -->
+<xs:schema
+        xmlns:xs="http://www.w3.org/2001/XMLSchema"
+        xmlns:mb3="http://isis.apache.org/applib/layout/menubars/bootstrap3"
+        xmlns:cpt="http://isis.apache.org/applib/layout/component"
+        xmlns:lnk="http://isis.apache.org/applib/layout/links"
+        xmlns:tns="http://isis.apache.org/applib/layout/menubars/bootstrap3"
+        elementFormDefault="qualified"
+        targetNamespace="http://isis.apache.org/applib/layout/menubars/bootstrap3" version="1.0">
+
+    <xs:import
+            namespace="http://isis.apache.org/applib/layout/component"
+            schemaLocation="../../component/component.xsd"/>
+
+    <xs:import
+            namespace="http://isis.apache.org/applib/layout/links"
+            schemaLocation="../../links/links.xsd"/>
+
+    <xs:element name="menuBars" type="tns:menuBars"/>
+
+    <xs:complexType name="menuBars">
+        <xs:sequence>
+            <xs:element minOccurs="0" name="primary" type="tns:menuBar"/>
+            <xs:element minOccurs="0" name="secondary" type="tns:menuBar"/>
+            <xs:element minOccurs="0" name="tertiary" type="tns:menuBar"/>
+            <xs:element minOccurs="0" name="metadataError" type="xs:string"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="menuBar">
+        <xs:sequence>
+            <xs:element maxOccurs="unbounded" name="menu" type="tns:menu"/>
+        </xs:sequence>
+    </xs:complexType>
+
+    <xs:complexType name="menu">
+        <xs:sequence>
+            <xs:element name="named" type="xs:string"/>
+            <xs:element minOccurs="0" maxOccurs="unbounded" name="section" type="tns:section"/>
+        </xs:sequence>
+        <xs:attribute name="cssClassFa" type="xs:string"/>
+        <xs:attribute name="unreferencedActions" type="xs:boolean"/>
+    </xs:complexType>
+
+    <xs:complexType name="section">
+        <xs:sequence>
+			<xs:element minOccurs="0" maxOccurs="1" name="named" type="xs:string"/>
+            <xs:element maxOccurs="unbounded" name="serviceAction" type="cpt:serviceAction"/>
+        </xs:sequence>
+    </xs:complexType>
+</xs:schema>