]> git.aero2k.de Git - tmp/jakarta-migration.git/commitdiff
CSPACE-5128 Convert seven date fields to be structured dates
authorAmy Wieliczka <amywieliczka@berkeley.edu>
Thu, 3 May 2012 21:04:19 +0000 (14:04 -0700)
committerAmy Wieliczka <amywieliczka@berkeley.edu>
Thu, 3 May 2012 21:04:19 +0000 (14:04 -0700)
24 files changed:
services/acquisition/3rdparty/nuxeo-platform-cs-acquisition/src/main/resources/OSGI-INF/layouts-contrib.xml
services/acquisition/3rdparty/nuxeo-platform-cs-acquisition/src/main/resources/schemas/acquisitions_common.xsd
services/acquisition/client/src/test/java/org/collectionspace/services/client/test/AcquisitionAuthRefsTest.java
services/acquisition/client/src/test/java/org/collectionspace/services/client/test/AcquisitionServiceTest.java
services/acquisition/jaxb/src/main/java/org/collectionspace/services/AcquisitionJAXBSchema.java
services/acquisition/jaxb/src/main/resources/acquisitions_common.xsd
services/objectexit/3rdparty/nuxeo-platform-cs-objectexit/src/main/resources/schemas/objectexit_common.xsd
services/objectexit/client/src/test/java/org/collectionspace/services/client/test/ObjectExitAuthRefsTest.java
services/objectexit/jaxb/src/main/java/org/collectionspace/services/ObjectexitJAXBSchema.java
services/objectexit/jaxb/src/main/resources/objectexit_common.xsd
services/organization/3rdparty/nuxeo-platform-cs-organization/src/main/resources/OSGI-INF/layouts-contrib.xml
services/organization/3rdparty/nuxeo-platform-cs-organization/src/main/resources/schemas/organizations_common.xsd
services/organization/client/src/main/java/org/collectionspace/services/client/OrgAuthorityClientUtils.java
services/organization/client/src/test/java/org/collectionspace/services/client/test/OrgAuthorityServiceTest.java
services/organization/jaxb/src/main/java/org/collectionspace/services/OrganizationJAXBSchema.java
services/organization/jaxb/src/main/resources/organization_common.xsd
services/person/3rdparty/nuxeo-platform-cs-person/src/main/resources/OSGI-INF/layouts-contrib.xml
services/person/3rdparty/nuxeo-platform-cs-person/src/main/resources/schemas/persons_common.xsd
services/person/client/src/main/java/org/collectionspace/services/client/PersonAuthorityClientUtils.java
services/person/client/src/test/java/org/collectionspace/services/client/test/PersonAuthorityServiceTest.java
services/person/jaxb/src/main/java/org/collectionspace/services/PersonJAXBSchema.java
services/person/jaxb/src/main/resources/person_common.xsd
services/person/sample/sample/src/main/java/org/collectionspace/services/person/client/sample/Sample.java
services/person/service/src/main/java/org/collectionspace/services/person/nuxeo/PersonDocumentModelHandler.java

index 0460930207d4c87a4665ddabd74f0b01cf6876fe..c4d1cd6e89d319cbae6702d4a9b079a0125ec63b 100644 (file)
@@ -10,7 +10,7 @@
         <template mode="any">/layouts/layout_default_template.xhtml</template>
       </templates>
       <rows>
-        <row><widget>accessionDate</widget></row>
+        <!-- <row><widget>accessionDate</widget></row> -->
         <row><widget>acquisitionAuthorizer</widget></row>
         <row><widget>acquisitionAuthorizerDate</widget></row>
         <row><widget>acquisitionDate</widget></row>
@@ -39,7 +39,7 @@
         <row><widget>fieldCollectionEventName</widget></row>
       </rows>
 
-      <widget name="accessionDate" type="text">
+      <!-- <widget name="accessionDate" type="text">
         <labels>
           <label mode="any">accessionDate</label>
         </labels>
@@ -50,7 +50,7 @@
         <properties widgetMode="edit">
           <property name="styleClass">dataInputText</property>
         </properties>
-      </widget>
+      </widget> -->
       
       <widget name="acquisitionAuthorizer" type="text">
         <labels>
index ebba7a018b5c8e464cf701b5e16a54d6f0800acf..f84d61e7d7ecf1b7f20dcd2c40254fd98312c5a4 100644 (file)
     <!-- See http://wiki.collectionspace.org/display/collectionspace/Acquisition+Schema -->\r
 \r
     <!--  Object Entry Information Group -->\r
-    <xs:element name="accessionDate" type="xs:date"/>\r
+    <xs:element name="accessionDate" type="structuredDateGroup"/>\r
     <xs:element name="acquisitionAuthorizer" type="xs:string"/>\r
     <xs:element name="acquisitionAuthorizerDate" type="xs:date"/>\r
     <xs:element name="acquisitionDates">\r
         <xs:complexType>\r
             <xs:sequence>\r
-                <xs:element name="acquisitionDate" type="xs:date" minOccurs="0" maxOccurs="unbounded"/>\r
+                <xs:element name="acquisitionDate" type="structuredDateGroup" minOccurs="0" maxOccurs="unbounded"/>\r
             </xs:sequence>\r
         </xs:complexType>\r
     </xs:element>\r
+    \r
+    <!-- <xs:element name="acquisitionDateGroupList" type="acquisitionDateGroupList"/>\r
+    \r
+    <xs:complexType name="acquisitionDateGroupList">\r
+        <xs:sequence>\r
+            <xs:element name="acquisitionDateGroup" type="structuredDateGroup" minOccurs="0"\r
+                maxOccurs="unbounded"/>\r
+        </xs:sequence>\r
+    </xs:complexType> -->\r
+    \r
     <xs:element name="acquisitionFundingList" type="acquisitionFundingList"/>\r
     <xs:element name="acquisitionMethod" type="xs:string"/>\r
     <xs:element name="acquisitionNote" type="xs:string"/>\r
                 <xs:element name="acquisitionFundingSourceProvisos" type="xs:string"/>\r
         </xs:sequence>\r
     </xs:complexType>\r
+    \r
+    <!-- Before (re)using this generic complex type in any record type -->\r
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->\r
+    <!-- that correctly in its table creation/row linking. -->\r
+    <xs:complexType name="structuredDateGroup">\r
+        <xs:sequence>\r
+            <xs:element name="dateDisplayDate" type="xs:string"/>\r
+            <xs:element name="dateAssociation" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>\r
+            <xs:element name="dateLatestYear" type="xs:integer"/>\r
+            <xs:element name="dateLatestMonth" type="xs:integer"/>\r
+            <xs:element name="dateLatestDay" type="xs:integer"/>\r
+            <xs:element name="dateLatestEra" type="xs:string"/>\r
+            <xs:element name="dateLatestCertainty" type="xs:string"/>\r
+            <xs:element name="dateLatestQualifier" type="xs:string"/>\r
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>\r
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>\r
+            <xs:element name="datePeriod" type="xs:string"/>\r
+            <xs:element name="dateNote" type="xs:string"/>\r
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>\r
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>\r
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>\r
+        </xs:sequence>\r
+    </xs:complexType>\r
 \r
 </xs:schema>\r
index a71c0297d0d3803880050c33b39a64198f60c7f3..25c89456ffb6b03f54acf6f724a49e247f531fdd 100644 (file)
@@ -112,11 +112,11 @@ public class AcquisitionAuthRefsTest extends BaseServiceTest<AbstractCommonList>
                createPersonRefs();
 
                PoxPayloadOut multipart = createAcquisitionInstance(
-                               "April 1, 2010",
                                acquisitionAuthorizerRefName,
                                acquisitionFundingSourcesRefNames,
                                ownersRefNames,
                                acquisitionSourcesRefNames);
+                                // "April 1, 2010",
 
                AcquisitionClient acquisitionClient = new AcquisitionClient();
                ClientResponse<Response> res = acquisitionClient.create(multipart);
@@ -367,14 +367,14 @@ public class AcquisitionAuthRefsTest extends BaseServiceTest<AbstractCommonList>
        }
 
        private PoxPayloadOut createAcquisitionInstance(
-                       String accessionDate,
                        String acquisitionAuthorizer,
                        List<String> acquisitionFundingSources,
                        List<String> acqOwners,
                        List<String> acquisitionSources) {
+                            // String accessionDate,
 
                AcquisitionsCommon acquisition = new AcquisitionsCommon();
-               acquisition.setAccessionDate(accessionDate);
+        // acquisition.setAccessionDate(accessionDate);
                acquisition.setAcquisitionAuthorizer(acquisitionAuthorizer);
 
                // AcquisitionFunding-related authrefs fields are *not* currently
index 06b8d6c3d6f83df6c702d2871abe389ad2d1eb4b..8a4cd916094e3db40370a50a9519c7e3194b72b3 100644 (file)
@@ -311,10 +311,10 @@ public class AcquisitionServiceTest extends AbstractPoxServiceTestImpl<AbstractC
         Assert.assertTrue(acqSources.size() > 0);
         Assert.assertNotNull(acqSources.get(0));
 
-        List<String> acqDates =
-                acquisitionObject.getAcquisitionDates().getAcquisitionDate();
-        Assert.assertTrue(acqDates.size() > 0);
-        Assert.assertNotNull(acqDates.get(0));
+        // List<String> acqDates =
+        //         acquisitionObject.getAcquisitionDates().getAcquisitionDate();
+        // Assert.assertTrue(acqDates.size() > 0);
+        // Assert.assertNotNull(acqDates.get(0));
 
         List<String> owners =
                 acquisitionObject.getOwners().getOwner();
@@ -703,11 +703,11 @@ public class AcquisitionServiceTest extends AbstractPoxServiceTestImpl<AbstractC
         acqSources.add("Museum Acquisition Source-" + identifier);
         acquisition.setAcquisitionSources(acqSourcesList);
 
-        AcquisitionDateList acqDatesList = new AcquisitionDateList();
-        List<String> acqDates = acqDatesList.getAcquisitionDate();
-        acqDates.add(CURRENT_DATE_UTC);
-        acqDates.add(CURRENT_DATE_UTC);
-        acquisition.setAcquisitionDates(acqDatesList);
+        // AcquisitionDateList acqDatesList = new AcquisitionDateList();
+        // List<String> acqDates = acqDatesList.getAcquisitionDate();
+        // acqDates.add(CURRENT_DATE_UTC);
+        // acqDates.add(CURRENT_DATE_UTC);
+        // acquisition.setAcquisitionDates(acqDatesList);
 
         OwnerList ownersList = new OwnerList();
         List<String> owners = ownersList.getOwner();
index 6e494646162b67a260b217ad890191deb1c2041c..2fc54257c568bffcdf67f5289b0a80c9e1fe5939 100644 (file)
@@ -8,7 +8,7 @@ package org.collectionspace.services;
  *\r
  */\r
 public interface AcquisitionJAXBSchema {\r
-       final static String ACCESSIONDATE = "accessionDate";\r
+    // final static String ACCESSIONDATE = "accessionDate";\r
 }\r
 \r
 \r
index d659635509d28986a7333440b71cd6671ede64bd..1b2a309964a325cb9e3dd64605f2f6d55bfb47ec 100644 (file)
@@ -33,7 +33,7 @@
             <xs:sequence>
                 <xs:element name="csid" type="xs:string" />
                 <!--  Object Entry Information Group -->
-                <xs:element name="accessionDate" type="xs:string"/>
+                <xs:element name="accessionDate" type="structuredDateGroup"/>
                 <xs:element name="acquisitionAuthorizer" type="xs:string"/>
                 <xs:element name="acquisitionAuthorizerDate" type="xs:string"/>
                 <xs:element name="acquisitionDates" type="acquisitionDateList"/>
@@ -65,7 +65,7 @@
 
     <xs:complexType name="acquisitionDateList">
         <xs:sequence>
-            <xs:element name="acquisitionDate" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
+            <xs:element name="acquisitionDate" type="structuredDateGroup" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
     </xs:complexType>
 
         </xs:sequence>
     </xs:complexType>
 
+    <!-- Before (re)using this generic complex type in any record type -->
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->
+    <!-- that correctly in its table creation/row linking. -->
+    <xs:complexType name="structuredDateGroup">
+        <xs:sequence>
+            <xs:element name="dateDisplayDate" type="xs:string"/>
+            <xs:element name="dateAssociation" type="xs:string"/>
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>
+            <xs:element name="dateLatestYear" type="xs:integer"/>
+            <xs:element name="dateLatestMonth" type="xs:integer"/>
+            <xs:element name="dateLatestDay" type="xs:integer"/>
+            <xs:element name="dateLatestEra" type="xs:string"/>
+            <xs:element name="dateLatestCertainty" type="xs:string"/>
+            <xs:element name="dateLatestQualifier" type="xs:string"/>
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>
+            <xs:element name="datePeriod" type="xs:string"/>
+            <xs:element name="dateNote" type="xs:string"/>
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>
+        </xs:sequence>
+    </xs:complexType>
 </xs:schema>
 
index d2045e3c5499295e2f2f5baf0fa5fb6bc2180179..df058134bc42d455f258fb5ea067b3557119a4e2 100644 (file)
@@ -23,7 +23,7 @@
     <!--  ObjectExit Information Group -->\r
     <xs:element name="currentOwner" type="xs:string"/>\r
     <xs:element name="depositor" type="xs:string"/>\r
-    <xs:element name="exitDate" type="xs:date"/>\r
+    <xs:element name="exitDate" type="structuredDateGroup"/>\r
     <xs:element name="exitMethods">\r
         <xs:complexType>\r
             <xs:sequence>\r
     <xs:element name="exitNote" type="xs:string"/>\r
     <xs:element name="exitNumber" type="xs:string"/>\r
     <xs:element name="exitReason" type="xs:string"/>\r
-    <xs:element name="packingNote" type="xs:string"/>    \r
+    <xs:element name="packingNote" type="xs:string"/>\r
+    \r
+    <!-- Before (re)using this generic complex type in any record type -->\r
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->\r
+    <!-- that correctly in its table creation/row linking. -->\r
+    <xs:complexType name="structuredDateGroup">\r
+        <xs:sequence>\r
+            <xs:element name="dateDisplayDate" type="xs:string"/>\r
+            <xs:element name="dateAssociation" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>\r
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>\r
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>\r
+            <xs:element name="dateLatestYear" type="xs:integer"/>\r
+            <xs:element name="dateLatestMonth" type="xs:integer"/>\r
+            <xs:element name="dateLatestDay" type="xs:integer"/>\r
+            <xs:element name="dateLatestEra" type="xs:string"/>\r
+            <xs:element name="dateLatestCertainty" type="xs:string"/>\r
+            <xs:element name="dateLatestQualifier" type="xs:string"/>\r
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>\r
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>\r
+            <xs:element name="datePeriod" type="xs:string"/>\r
+            <xs:element name="dateNote" type="xs:string"/>\r
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>\r
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>\r
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>\r
+        </xs:sequence>\r
+    </xs:complexType>\r
 </xs:schema>\r
index 92529ab89349e5db53913ae5ddefed1c012d0a96..ce8db240332eef11a037d59849746f8746bd6672 100644 (file)
@@ -66,7 +66,7 @@ public class ObjectExitAuthRefsTest extends BaseServiceTest<AbstractCommonList>
     private List<String> personIdsCreated = new ArrayList<String>();
     private String personAuthCSID = null;
     private String depositorRefName = null;
-    private String exitDate = null;
+    // private String exitDate = null;
     private String exitNumber = null;
     private final static String CURRENT_DATE_UTC =
             GregorianCalendarDateTimeUtils.currentDateUTC();
@@ -91,14 +91,15 @@ public class ObjectExitAuthRefsTest extends BaseServiceTest<AbstractCommonList>
         throw new UnsupportedOperationException(); //method not supported (or needed) in this test class
     }
 
-    private PoxPayloadOut createObjectExitInstance(String depositorRefName, String exitNumber, String exitDate) {
-        this.exitDate = exitDate;
+    private PoxPayloadOut createObjectExitInstance(String depositorRefName, String exitNumber) {
+        // , String exitDate
+        // this.exitDate = exitDate;
         this.exitNumber = exitNumber;
         this.depositorRefName = depositorRefName;
         ObjectexitCommon objectexit = new ObjectexitCommon();
         objectexit.setDepositor(depositorRefName);
         objectexit.setExitNumber(exitNumber);
-        objectexit.setExitDate(exitDate);
+        // objectexit.setExitDate(exitDate);
 
         PoxPayloadOut multipart = new PoxPayloadOut(ObjectExitClient.SERVICE_PAYLOAD_NAME);
         PayloadOutputPart commonPart = multipart.addPart(new ObjectExitClient().getCommonPartName(),
@@ -116,7 +117,8 @@ public class ObjectExitAuthRefsTest extends BaseServiceTest<AbstractCommonList>
         //    references, and will refer to Person resources by their refNames.
         ObjectExitClient objectexitClient = new ObjectExitClient();
         PoxPayloadOut multipart = createObjectExitInstance(depositorRefName,
-                "exitNumber-" + identifier, CURRENT_DATE_UTC);
+                "exitNumber-" + identifier);
+                // , CURRENT_DATE_UTC
         ClientResponse<Response> res = objectexitClient.create(multipart);
         try {
                assertStatusCode(res, testName);
index 302847321956a692c6ac6bd4376df21b703fb186..572a574f9e1227a764888acfb804531316113cee 100644 (file)
@@ -6,7 +6,7 @@ package org.collectionspace.services;
 public interface ObjectexitJAXBSchema {
     final static String OBJECT_EXIT_CURRENT_OWNER = "currentOwner";
     final static String OBJECT_EXIT_DEPOSITOR = "depositor";
-    final static String OBJECT_EXIT_DATE = "exitDate";
+    // final static String OBJECT_EXIT_DATE = "exitDate";
     final static String OBJECT_EXIT_METHODS = "exitMethods";
     final static String OBJECT_EXIT_METHOD = "exitMethod";
     final static String OBJECT_EXIT_NOTE = "exitNote";
index 0fb56d74033db97ac0d66ad685a543ea35029abe..183d2ca3144a0bb43b8cef4c2a9e75cd62716cb4 100644 (file)
@@ -34,7 +34,7 @@
                 <!--  ObjectExit Information Group -->
                 <xs:element name="currentOwner" type="xs:string"/>
                 <xs:element name="depositor" type="xs:string"/>
-                <xs:element name="exitDate" type="xs:string"/>
+                <xs:element name="exitDate" type="structuredDateGroup"/>
                 <xs:element name="exitMethods" type="exitMethods"/>
                 <xs:element name="exitNote" type="xs:string"/>
                 <xs:element name="exitNumber" type="xs:string"/>
         </xs:sequence>
     </xs:complexType>
 
+    <!-- Before (re)using this generic complex type in any record type -->
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->
+    <!-- that correctly in its table creation/row linking. -->
+    <xs:complexType name="structuredDateGroup">
+        <xs:sequence>
+            <xs:element name="dateDisplayDate" type="xs:string"/>
+            <xs:element name="dateAssociation" type="xs:string"/>
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>
+            <xs:element name="dateLatestYear" type="xs:integer"/>
+            <xs:element name="dateLatestMonth" type="xs:integer"/>
+            <xs:element name="dateLatestDay" type="xs:integer"/>
+            <xs:element name="dateLatestEra" type="xs:string"/>
+            <xs:element name="dateLatestCertainty" type="xs:string"/>
+            <xs:element name="dateLatestQualifier" type="xs:string"/>
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>
+            <xs:element name="datePeriod" type="xs:string"/>
+            <xs:element name="dateNote" type="xs:string"/>
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>
+        </xs:sequence>
+    </xs:complexType>
 </xs:schema>
 
index 40174648763c181bc1961617ae0cb4aab1b8c117..499c800417e1da00feea7b851c6c86aeca01a143 100644 (file)
@@ -89,8 +89,8 @@
         <!-- Repeatable fields are commented out for now until we -->
         <!-- identify how to represent these complex types in layouts. -->
 <!--        <row><widget>contactName</widget></row>-->
-        <row><widget>foundingDate</widget></row>
-        <row><widget>dissolutionDate</widget></row>
+        <!-- <row><widget>foundingDate</widget></row>
+        <row><widget>dissolutionDate</widget></row> -->
         <row><widget>foundingPlace</widget></row>
 <!--        <row><widget>group</widget></row> -->
 <!--        <row><widget>function</widget></row> -->
           <property name="styleClass">dataInputText</property>
         </properties>
       </widget>
--->
       
       <widget name="foundingDate" type="text">
         <labels>
           <property name="styleClass">dataInputText</property>
         </properties>
       </widget>
-      
+-->      
       <widget name="foundingPlace" type="text">
         <labels>
           <label mode="any">foundingPlace</label>
index b02a176754978e03061d337c6e2c6207bca7df71..34d78752a1695cf17372cf56c005949daadb0d8b 100644 (file)
             </xs:sequence>
         </xs:complexType>
     </xs:element>
-    <xs:element name="foundingDate" type="xs:string"/>
-    <xs:element name="dissolutionDate" type="xs:string"/>
+    <xs:element name="foundingDate" type="structuredDateGroup"/>
+    <!-- <xs:element name="foundingDate" type="xs:string"/> -->
+    <xs:element name="dissolutionDate" type="structuredDateGroup"/>
+    <!-- <xs:element name="dissolutionDate" type="xs:string"/> -->
     <xs:element name="foundingPlace" type="xs:string"/>
     <xs:element name="groups">
         <xs:complexType>
             <xs:element name="historyNote" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
     </xs:complexType>
+    
+    <!-- Before (re)using this generic complex type in any record type -->
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->
+    <!-- that correctly in its table creation/row linking. -->
+    <xs:complexType name="structuredDateGroup">
+        <xs:sequence>
+            <xs:element name="dateDisplayDate" type="xs:string"/>
+            <xs:element name="dateAssociation" type="xs:string"/>
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>
+            <xs:element name="dateLatestYear" type="xs:integer"/>
+            <xs:element name="dateLatestMonth" type="xs:integer"/>
+            <xs:element name="dateLatestDay" type="xs:integer"/>
+            <xs:element name="dateLatestEra" type="xs:string"/>
+            <xs:element name="dateLatestCertainty" type="xs:string"/>
+            <xs:element name="dateLatestQualifier" type="xs:string"/>
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>
+            <xs:element name="datePeriod" type="xs:string"/>
+            <xs:element name="dateNote" type="xs:string"/>
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>
+        </xs:sequence>
+    </xs:complexType>
 
 </xs:schema>
 
index e8f8f3587dea3bcf614451cc4bcc3d7678407b0f..c24c781d9aaddb7cfb0d5504fc8e0faa9d1ededb 100644 (file)
@@ -271,10 +271,10 @@ public class OrgAuthorityClientUtils {
                contactNames.addAll(values);\r
                 organization.setContactNames(contactsList);\r
         }\r
-        if((value = (String)orgInfo.get(OrganizationJAXBSchema.FOUNDING_DATE))!=null)\r
-               organization.setFoundingDate(value);\r
-        if((value = (String)orgInfo.get(OrganizationJAXBSchema.DISSOLUTION_DATE))!=null)\r
-               organization.setDissolutionDate(value);\r
+        // if((value = (String)orgInfo.get(OrganizationJAXBSchema.FOUNDING_DATE))!=null)\r
+        //  organization.setFoundingDate(value);\r
+        // if((value = (String)orgInfo.get(OrganizationJAXBSchema.DISSOLUTION_DATE))!=null)\r
+        //  organization.setDissolutionDate(value);\r
         if((value = (String)orgInfo.get(OrganizationJAXBSchema.FOUNDING_PLACE))!=null)\r
                organization.setFoundingPlace(value);\r
         if((values = (List<String>)orgRepeatablesInfo.get(OrganizationJAXBSchema.GROUPS))!=null) {\r
index fde3af062214f923b4a76e510ae039a2743e27a1..d96a940b7858c4323801fe56197477c54606dcc0 100644 (file)
@@ -126,7 +126,7 @@ public class OrgAuthorityServiceTest extends AbstractAuthorityServiceTest<Orgaut
         testOrgMap.put(OrganizationJAXBSchema.SHORT_IDENTIFIER, shortId);
         testOrgMap.put(OrganizationJAXBSchema.SHORT_NAME, TEST_ORG_SHORTNAME);
         testOrgMap.put(OrganizationJAXBSchema.LONG_NAME, "The real official test organization");
-        testOrgMap.put(OrganizationJAXBSchema.FOUNDING_DATE, "May 26, 1907");
+        // testOrgMap.put(OrganizationJAXBSchema.FOUNDING_DATE, "May 26, 1907");
         testOrgMap.put(OrganizationJAXBSchema.FOUNDING_PLACE, TEST_ORG_FOUNDING_PLACE);
 
         return OrgAuthorityClientUtils.createOrganizationInstance(identifier, testOrgMap, headerLabel);
@@ -153,7 +153,7 @@ public class OrgAuthorityServiceTest extends AbstractAuthorityServiceTest<Orgaut
         testOrgMap.put(OrganizationJAXBSchema.SHORT_IDENTIFIER, shortId);
         testOrgMap.put(OrganizationJAXBSchema.SHORT_NAME, TEST_ORG_SHORTNAME);
         testOrgMap.put(OrganizationJAXBSchema.LONG_NAME, "The real official test organization");
-        testOrgMap.put(OrganizationJAXBSchema.FOUNDING_DATE, "May 26, 1907");
+        // testOrgMap.put(OrganizationJAXBSchema.FOUNDING_DATE, "May 26, 1907");
         testOrgMap.put(OrganizationJAXBSchema.FOUNDING_PLACE, TEST_ORG_FOUNDING_PLACE);
 
         Map<String, List<String>> testOrgRepeatablesMap = new HashMap<String, List<String>>();
index 28e48a7c7b4198403b8584105cd10b538b4f1c3a..a5e63655ad887a6b1c80cc1b79adc6b158975079 100644 (file)
@@ -17,8 +17,8 @@ public interface OrganizationJAXBSchema extends AuthorityItemJAXBSchema {
     final static String SHORT_NAME = "shortName";\r
     final static String NAME_ADDITIONS = "nameAdditions";\r
     final static String CONTACT_NAMES = "contactNames";\r
-    final static String FOUNDING_DATE = "foundingDate";\r
-    final static String DISSOLUTION_DATE = "dissolutionDate";\r
+    // final static String FOUNDING_DATE = "foundingDate";\r
+    // final static String DISSOLUTION_DATE = "dissolutionDate";\r
     final static String FOUNDING_PLACE = "foundingPlace";\r
     final static String GROUPS = "groups";\r
     final static String FUNCTIONS = "functions";\r
index 946afd0eb3307141b514741f1a8c242cd8a79ed2..37602d94d087151c2e816482f474b07e8b16c1a9 100644 (file)
                 <xs:element name="description" type="xs:string"/>
                 <xs:element name="mainBodyGroupList" type="mainBodyGroupList"/>
                 <xs:element name="contactNames" type="contactNameList"/>
-                <xs:element name="foundingDate" type="xs:string"/>
-                <xs:element name="dissolutionDate" type="xs:string"/>
+                <xs:element name="foundingDate" type="structuredDateGroup"/>
+                <xs:element name="dissolutionDate" type="structuredDateGroup"/>
+                <!-- <xs:element name="foundingDate" type="xs:string"/>
+                <xs:element name="dissolutionDate" type="xs:string"/> -->
                 <xs:element name="foundingPlace" type="xs:string"/>
                 <xs:element name="groups" type="groupList"/>
                 <xs:element name="functions" type="functionList"/>
             <xs:element name="historyNote" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
         </xs:sequence>
     </xs:complexType>
+    
+    <!-- Before (re)using this generic complex type in any record type -->
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->
+    <!-- that correctly in its table creation/row linking. -->
+    <xs:complexType name="structuredDateGroup">
+        <xs:sequence>
+            <xs:element name="dateDisplayDate" type="xs:string"/>
+            <xs:element name="dateAssociation" type="xs:string"/>
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>
+            <xs:element name="dateLatestYear" type="xs:integer"/>
+            <xs:element name="dateLatestMonth" type="xs:integer"/>
+            <xs:element name="dateLatestDay" type="xs:integer"/>
+            <xs:element name="dateLatestEra" type="xs:string"/>
+            <xs:element name="dateLatestCertainty" type="xs:string"/>
+            <xs:element name="dateLatestQualifier" type="xs:string"/>
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>
+            <xs:element name="datePeriod" type="xs:string"/>
+            <xs:element name="dateNote" type="xs:string"/>
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>
+        </xs:sequence>
+    </xs:complexType>
 
 </xs:schema>
 
index f5099c5f759da8a6d38204115cdb44c9937edab8..be59ad9166135cd51d4d9b53044a5877ce0bc5d7 100644 (file)
@@ -89,8 +89,6 @@
         <row><widget>salutation</widget></row>
         <row><widget>title</widget></row>
         <row><widget>nameAdditions</widget></row>
-        <row><widget>birthDate</widget></row>
-        <row><widget>deathDate</widget></row>
         <row><widget>birthPlace</widget></row>
         <row><widget>deathPlace</widget></row>
         <!-- Repeatable fields are commented out for now until we -->
         </properties>
       </widget>
       
-      <widget name="birthDate" type="text">
-        <labels>
-          <label mode="any">birthDate</label>
-        </labels>
-        <translated>true</translated>
-        <fields>
-          <field schema="persons_common">birthDate</field>
-        </fields>
-        <properties widgetMode="edit">
-          <property name="styleClass">dataInputText</property>
-        </properties>
-      </widget>
-      
-      <widget name="deathDate" type="text">
-        <labels>
-          <label mode="any">deathDate</label>
-        </labels>
-        <translated>true</translated>
-        <fields>
-          <field schema="persons_common">deathDate</field>
-        </fields>
-        <properties widgetMode="edit">
-          <property name="styleClass">dataInputText</property>
-        </properties>
-      </widget>
-      
       <widget name="birthPlace" type="text">
         <labels>
           <label mode="any">birthPlace</label>
index dbca58f8446657f59574f1261d5d2bee4d2a5260..7a51929feb86a625f7e7333ce62d828cd51895e4 100644 (file)
@@ -46,8 +46,8 @@
     <xs:element name="nameAdditions" type="xs:string"/>
     <!-- FIXME: End of provisional repeatable group. -->
 
-    <xs:element name="birthDate" type="xs:string"/>
-    <xs:element name="deathDate" type="xs:string"/>
+    <xs:element name="birthDate" type="structuredDateGroup"/>
+    <xs:element name="deathDate" type="structuredDateGroup"/>
     <xs:element name="birthPlace" type="xs:string"/>
     <xs:element name="deathPlace" type="xs:string"/>
     <xs:element name="groups">
     <xs:element name="bioNote" type="xs:string"/>
     <xs:element name="nameNote" type="xs:string"/>
 
+    <!-- Before (re)using this generic complex type in any record type -->
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->
+    <!-- that correctly in its table creation/row linking. -->
+    <xs:complexType name="structuredDateGroup">
+        <xs:sequence>
+            <xs:element name="dateDisplayDate" type="xs:string"/>
+            <xs:element name="dateAssociation" type="xs:string"/>
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>
+            <xs:element name="dateLatestYear" type="xs:integer"/>
+            <xs:element name="dateLatestMonth" type="xs:integer"/>
+            <xs:element name="dateLatestDay" type="xs:integer"/>
+            <xs:element name="dateLatestEra" type="xs:string"/>
+            <xs:element name="dateLatestCertainty" type="xs:string"/>
+            <xs:element name="dateLatestQualifier" type="xs:string"/>
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>
+            <xs:element name="datePeriod" type="xs:string"/>
+            <xs:element name="dateNote" type="xs:string"/>
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>
+        </xs:sequence>
+    </xs:complexType>
+
 </xs:schema>
 
index 267c8ac99b3c13063b677b551ee93e79a6c6a1f8..cbfa8f97826c56fb0182597133af2e49e486091a 100644 (file)
@@ -245,10 +245,6 @@ public class PersonAuthorityClientUtils {
                person.setTitle(value);\r
         if((value = (String)personInfo.get(PersonJAXBSchema.NAME_ADDITIONS))!=null)\r
                person.setNameAdditions(value);\r
-        if((value = (String)personInfo.get(PersonJAXBSchema.BIRTH_DATE))!=null)\r
-               person.setBirthDate(value);\r
-        if((value = (String)personInfo.get(PersonJAXBSchema.DEATH_DATE))!=null)\r
-               person.setDeathDate(value);\r
         if((value = (String)personInfo.get(PersonJAXBSchema.BIRTH_PLACE))!=null)\r
                person.setBirthPlace(value);\r
         if((value = (String)personInfo.get(PersonJAXBSchema.DEATH_PLACE))!=null)\r
@@ -330,9 +326,7 @@ public class PersonAuthorityClientUtils {
                        prepareDefaultDisplayName(\r
                        personMap.get(PersonJAXBSchema.FORE_NAME),\r
                        personMap.get(PersonJAXBSchema.MIDDLE_NAME),\r
-                       personMap.get(PersonJAXBSchema.SUR_NAME),\r
-                       personMap.get(PersonJAXBSchema.BIRTH_DATE),\r
-                       personMap.get(PersonJAXBSchema.DEATH_DATE));\r
+                       personMap.get(PersonJAXBSchema.SUR_NAME));\r
                personMap.put(PersonJAXBSchema.DISPLAY_NAME, displayName);\r
        }\r
        String shortDisplayName = personMap.get(PersonJAXBSchema.SHORT_DISPLAY_NAME);\r
@@ -346,7 +340,7 @@ public class PersonAuthorityClientUtils {
                shortDisplayName = \r
                        prepareDefaultDisplayName(\r
                        personMap.get(PersonJAXBSchema.FORE_NAME), null,\r
-                       personMap.get(PersonJAXBSchema.SUR_NAME),null,null);\r
+                       personMap.get(PersonJAXBSchema.SUR_NAME));\r
                personMap.put(PersonJAXBSchema.SHORT_DISPLAY_NAME, shortDisplayName);\r
        }\r
        \r
@@ -464,13 +458,10 @@ public class PersonAuthorityClientUtils {
      * @param foreName \r
      * @param middleName\r
      * @param surName\r
-     * @param birthDate\r
-     * @param deathDate\r
      * @return display name\r
      */\r
     public static String prepareDefaultDisplayName(\r
-               String foreName, String middleName, String surName,\r
-               String birthDate, String deathDate ) {\r
+               String foreName, String middleName, String surName) {\r
        StringBuilder newStr = new StringBuilder();\r
                final String sep = " ";\r
                final String dateSep = "-";\r
@@ -486,25 +477,7 @@ public class PersonAuthorityClientUtils {
                                firstAdded = true;\r
                        }\r
        }\r
-       // Now we add the dates. In theory could have dates with no name, but that is their problem.\r
-       boolean foundBirth = false;\r
-               if(null != birthDate) {\r
-                       if(firstAdded) {\r
-                               newStr.append(sep);\r
-                       }\r
-                       newStr.append(birthDate);\r
-               newStr.append(dateSep);         // Put this in whether there is a death date or not\r
-                       foundBirth = true;\r
-               }\r
-               if(null != deathDate) {\r
-                       if(!foundBirth) {\r
-                               if(firstAdded) {\r
-                                       newStr.append(sep);\r
-                               }\r
-                       newStr.append(dateSep);\r
-                       }\r
-                       newStr.append(deathDate);\r
-               }\r
+\r
                return newStr.toString();\r
     }\r
     \r
index 61dcc1f28c756c1b166f1bf368b50dc32b8fa703..fc83a52cc910c87b0b93b5d35b390f1a9d66d979 100644 (file)
@@ -90,10 +90,6 @@ public class PersonAuthorityServiceTest extends AbstractAuthorityServiceTest<Per
     final String TEST_MIDDLE_NAME = null;
     /** The test surname. */
     final String TEST_SUR_NAME = "Wayne";
-    /** The test birthdate. */
-    final String TEST_BIRTH_DATE = "May 26, 1907";
-    /** The test death date. */
-    final String TEST_DEATH_DATE = "June 11, 1979";
     //private String knownResourceRefName = null;
     private String knownItemResourceShortIdentifer = null;
     // The resource ID of an item resource used for partial term matching tests.
@@ -223,9 +219,7 @@ public class PersonAuthorityServiceTest extends AbstractAuthorityServiceTest<Per
         johnWayneMap.put(PersonJAXBSchema.FORE_NAME, TEST_FORE_NAME);
         johnWayneMap.put(PersonJAXBSchema.SUR_NAME, TEST_SUR_NAME);
         johnWayneMap.put(PersonJAXBSchema.GENDER, "male");
-        johnWayneMap.put(PersonJAXBSchema.BIRTH_DATE, TEST_BIRTH_DATE);
         johnWayneMap.put(PersonJAXBSchema.BIRTH_PLACE, "Winterset, Iowa");
-        johnWayneMap.put(PersonJAXBSchema.DEATH_DATE, TEST_DEATH_DATE);
         johnWayneMap.put(PersonJAXBSchema.BIO_NOTE, "born Marion Robert Morrison and better"
                 + "known by his stage name John Wayne, was an American film actor, director "
                 + "and producer. He epitomized rugged masculinity and has become an enduring "
@@ -652,15 +646,15 @@ public class PersonAuthorityServiceTest extends AbstractAuthorityServiceTest<Per
         String displayName = person.getDisplayName();
         String expectedDisplayName =
                 PersonAuthorityClientUtils.prepareDefaultDisplayName(
-                TEST_FORE_NAME, null, TEST_SUR_NAME,
-                TEST_BIRTH_DATE, TEST_DEATH_DATE);
+                TEST_FORE_NAME, null, TEST_SUR_NAME);
         Assert.assertFalse(displayName.equals(expectedDisplayName));
 
         // Make sure short displayName matches computed form
         String shortDisplayName = person.getShortDisplayName();
         String expectedShortDisplayName =
                 PersonAuthorityClientUtils.prepareDefaultDisplayName(
-                TEST_FORE_NAME, null, TEST_SUR_NAME, null, null);
+                TEST_FORE_NAME, null, TEST_SUR_NAME);
+                // , null
         Assert.assertFalse(expectedShortDisplayName.equals(shortDisplayName));
 
         // Update the forename and verify the computed name is updated.
@@ -670,11 +664,11 @@ public class PersonAuthorityServiceTest extends AbstractAuthorityServiceTest<Per
         person.setForeName("updated-" + TEST_FORE_NAME);
         expectedDisplayName =
                 PersonAuthorityClientUtils.prepareDefaultDisplayName(
-                "updated-" + TEST_FORE_NAME, null, TEST_SUR_NAME,
-                TEST_BIRTH_DATE, TEST_DEATH_DATE);
+                "updated-" + TEST_FORE_NAME, null, TEST_SUR_NAME);
         expectedShortDisplayName =
                 PersonAuthorityClientUtils.prepareDefaultDisplayName(
-                "updated-" + TEST_FORE_NAME, null, TEST_SUR_NAME, null, null);
+                "updated-" + TEST_FORE_NAME, null, TEST_SUR_NAME);
+                // , null
 
         // Submit the updated resource to the service and store the response.
         PoxPayloadOut output = new PoxPayloadOut(PersonAuthorityClient.SERVICE_ITEM_PAYLOAD_NAME);
index a9b8ce981933c68e70a2f9f90e8ee10091526fd6..00a3b01e90e71e1bc8e3641d081527833dd5e74f 100644 (file)
@@ -17,8 +17,6 @@ public interface PersonJAXBSchema extends AuthorityItemJAXBSchema {
        final static String SALUTATIONS = "salutations";\r
        final static String TITLE = "title";\r
        final static String NAME_ADDITIONS = "nameAdditions";\r
-       final static String BIRTH_DATE = "birthDate";\r
-       final static String DEATH_DATE = "deathDate";\r
        final static String BIRTH_PLACE = "birthPlace";\r
        final static String DEATH_PLACE = "deathPlace";\r
        final static String GROUPS = "groups";\r
index df0c9c16bded1038d4d0fe35723ed5292d5039dd..4f849e87f523d31a44ed24d01f3164341700d938 100644 (file)
@@ -50,8 +50,8 @@
                 <xs:element name="salutation" type="xs:string"/>
                 <xs:element name="title" type="xs:string"/>
                 <xs:element name="nameAdditions" type="xs:string"/>
-                <xs:element name="birthDate" type="xs:string"/>
-                <xs:element name="deathDate" type="xs:string"/>
+                <xs:element name="birthDate" type="structuredDateGroup"/>
+                <xs:element name="deathDate" type="structuredDateGroup"/>
                 <xs:element name="birthPlace" type="xs:string"/>
                 <xs:element name="deathPlace" type="xs:string"/>
                 <xs:element name="groups" type="groupList"/>
         </xs:sequence>
     </xs:complexType>
     
+    <!-- Before (re)using this generic complex type in any record type -->
+    <!-- other than CollectionObject, be sure to verify that Nuxeo handles -->
+    <!-- that correctly in its table creation/row linking. -->
+    <xs:complexType name="structuredDateGroup">
+        <xs:sequence>
+            <xs:element name="dateDisplayDate" type="xs:string"/>
+            <xs:element name="dateAssociation" type="xs:string"/>
+            <xs:element name="dateEarliestSingleYear" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleMonth" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleDay" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleEra" type="xs:string"/>
+            <xs:element name="dateEarliestSingleCertainty" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifier" type="xs:string"/>
+            <xs:element name="dateEarliestSingleQualifierValue" type="xs:integer"/>
+            <xs:element name="dateEarliestSingleQualifierUnit" type="xs:string"/>
+            <xs:element name="dateLatestYear" type="xs:integer"/>
+            <xs:element name="dateLatestMonth" type="xs:integer"/>
+            <xs:element name="dateLatestDay" type="xs:integer"/>
+            <xs:element name="dateLatestEra" type="xs:string"/>
+            <xs:element name="dateLatestCertainty" type="xs:string"/>
+            <xs:element name="dateLatestQualifier" type="xs:string"/>
+            <xs:element name="dateLatestQualifierValue" type="xs:integer"/>
+            <xs:element name="dateLatestQualifierUnit" type="xs:string"/>
+            <xs:element name="datePeriod" type="xs:string"/>
+            <xs:element name="dateNote" type="xs:string"/>
+            <xs:element name="dateEarliestScalarValue" type="xs:date"/>
+            <xs:element name="dateLatestScalarValue" type="xs:date"/>
+            <xs:element name="scalarValuesComputed" type="xs:boolean"/>
+        </xs:sequence>
+    </xs:complexType>
+    
 </xs:schema>
 
index 3ff81ae99837a655f512866c287900ce2d89a2d3..52d16f3b127e1918dda1335db01ca8c214f94262 100644 (file)
@@ -123,8 +123,6 @@ public class Sample {
        String foreName = personMap.get(PersonJAXBSchema.FORE_NAME);\r
        String middleName = personMap.get(PersonJAXBSchema.MIDDLE_NAME);\r
        String surName = personMap.get(PersonJAXBSchema.SUR_NAME);\r
-       String birthDate = personMap.get(PersonJAXBSchema.BIRTH_DATE);\r
-       String deathDate = personMap.get(PersonJAXBSchema.DEATH_DATE);\r
        StringBuilder builtName = new StringBuilder();\r
        if(foreName!=null)\r
                builtName.append(foreName);\r
@@ -132,11 +130,6 @@ public class Sample {
                builtName.append(middleName);\r
        if(surName!=null)\r
                builtName.append(surName);\r
-       if(birthDate!=null)\r
-               builtName.append(birthDate);\r
-               builtName.append("-");\r
-       if(deathDate!=null)\r
-               builtName.append(deathDate);\r
 \r
         String displaySuffix = "displayName-" + System.currentTimeMillis(); //TODO: Laramie20100728 temp fix, made-up displaySuffix.\r
 \r
@@ -372,10 +365,6 @@ public class Sample {
                person.setTitle(value);\r
             if((value = (String)personInfo.get(PersonJAXBSchema.NAME_ADDITIONS))!=null)\r
                person.setNameAdditions(value);\r
-            if((value = (String)personInfo.get(PersonJAXBSchema.BIRTH_DATE))!=null)\r
-               person.setBirthDate(value);\r
-            if((value = (String)personInfo.get(PersonJAXBSchema.DEATH_DATE))!=null)\r
-               person.setDeathDate(value);\r
             if((value = (String)personInfo.get(PersonJAXBSchema.BIRTH_PLACE))!=null)\r
                person.setBirthPlace(value);\r
             if((value = (String)personInfo.get(PersonJAXBSchema.DEATH_PLACE))!=null)\r
index ea7f3275785c10b3933c8cadd9a24b3b36d4e134..b0dca98db2741e34208f469987fae1c9b4a29849 100644 (file)
@@ -84,20 +84,14 @@ public class PersonDocumentModelHandler
                String lastname = 
                                (String)docModel.getProperty(commonPartLabel, PersonJAXBSchema.SUR_NAME);
                if(shortDisplayNameComputed) {
-                       String displayName = prepareDefaultDisplayName(forename, null, lastname,
-                                       null, null);
+                       String displayName = prepareDefaultDisplayName(forename, null, lastname);
                        docModel.setProperty(commonPartLabel, PersonJAXBSchema.SHORT_DISPLAY_NAME,
                                        displayName);
                }
                if(displayNameComputed) {
                        String midname = 
                                        (String)docModel.getProperty(commonPartLabel, PersonJAXBSchema.MIDDLE_NAME);                            
-                       String birthdate = 
-                                       (String)docModel.getProperty(commonPartLabel, PersonJAXBSchema.BIRTH_DATE);
-                       String deathdate = 
-                                       (String)docModel.getProperty(commonPartLabel, PersonJAXBSchema.DEATH_DATE);
-                       String displayName = prepareDefaultDisplayName(forename, midname, lastname,
-                                       birthdate, deathdate);
+                       String displayName = prepareDefaultDisplayName(forename, midname, lastname); 
                        docModel.setProperty(commonPartLabel, PersonJAXBSchema.DISPLAY_NAME,
                                        displayName);
                }
@@ -113,14 +107,11 @@ public class PersonDocumentModelHandler
      * @param foreName 
      * @param middleName
      * @param surName
-     * @param birthDate
-     * @param deathDate
      * @return
      * @throws Exception
      */
     private static String prepareDefaultDisplayName(
-               String foreName, String middleName, String surName,
-               String birthDate, String deathDate ) throws Exception {
+               String foreName, String middleName, String surName) throws Exception {
                final String SEP = " ";
                final String DATE_SEP = "-";
 
@@ -137,25 +128,6 @@ public class PersonDocumentModelHandler
                                firstAdded = true;
                        }
        }
-       // Now we add the dates. In theory could have dates with no name, but that is their problem.
-       boolean foundBirth = false;
-               if (birthDate != null) {
-                       if (firstAdded) {
-                               newStr.append(SEP);
-                       }
-                       newStr.append(birthDate);
-               newStr.append(DATE_SEP);                // Put this in whether there is a death date or not
-                       foundBirth = true;
-               }
-               if (deathDate != null) {
-                       if (!foundBirth) {
-                               if (firstAdded == true) {
-                                       newStr.append(SEP);
-                               }
-                       newStr.append(DATE_SEP);
-                       }
-                       newStr.append(deathDate);
-               }
                
                return newStr.toString();
     }