From 065ba5f27c7c4003ec56b00792a1d71e1b641354 Mon Sep 17 00:00:00 2001 From: Martin Goik <goik@hdm-stuttgart.de> Date: Sat, 12 Mar 2016 09:43:50 +0100 Subject: [PATCH] http --> https --- Doc/Common/bibliography.xml | 4 +- Doc/Common/glossary.xml | 46 ++++---- Doc/Common/outdatedBibliography.xml | 2 +- Doc/Sd1/appendix.xml | 10 +- Doc/Sd1/arrays.xml | 14 +-- Doc/Sd1/collections.xml | 128 ++++++++++----------- Doc/Sd1/coreClasses.xml | 54 ++++----- Doc/Sd1/deployment.xml | 10 +- Doc/Sd1/gettingStarted.xml | 22 ++-- Doc/Sd1/languageFundamentals.xml | 34 +++--- Doc/Sd1/objectsClasses.xml | 38 +++--- Doc/Sd1/statements.xml | 10 +- Doc/Sd1/streams.xml | 28 ++--- Doc/Sda1/dom.xml | 136 +++++++++++----------- Doc/Sda1/fo.xml | 154 ++++++++++++------------- Doc/Sda1/jdbc.xml | 142 +++++++++++------------ Doc/Sda1/jpaintro.xml | 4 +- Doc/Sda1/prerequisites.xml | 38 +++--- Doc/Sda1/sax.xml | 36 +++--- Doc/Sda1/schema.xml | 64 +++++------ Doc/Sda1/vaadin.xml | 8 +- Doc/Sda1/xmlintro.xml | 26 ++--- Doc/Sda1/xmlschema.xml | 62 +++++----- Doc/Sda1/xslt.xml | 172 ++++++++++++++-------------- Doc/Sda2/jpa.xml | 48 ++++---- Doc/Sda2/ldap.xml | 20 ++-- Doc/Sdi/apache.xml | 10 +- Doc/Sdi/ldap.xml | 16 +-- Doc/Sdi/unixIntro.xml | 2 +- 29 files changed, 669 insertions(+), 669 deletions(-) diff --git a/Doc/Common/bibliography.xml b/Doc/Common/bibliography.xml index 3bd50bc45..53d9214e2 100644 --- a/Doc/Common/bibliography.xml +++ b/Doc/Common/bibliography.xml @@ -156,7 +156,7 @@ <title>Harnessing Hibernate</title> </biblioentry> - <biblioentry xlink:href="http://proquest.safaribooksonline.com/book/web-development/xml/9781118239483" + <biblioentry xlink:href="https://proquest.safaribooksonline.com/book/web-development/xml/9781118239483" xml:id="bib_fawcett2012"> <abbrev>Fawcett2012</abbrev> @@ -431,7 +431,7 @@ <title>Java ist auch eine Insel</title> </biblioentry> - <biblioentry xlink:href="http://proquest.safaribooksonline.com/book/web-development/xml/9780132886741" + <biblioentry xlink:href="https://proquest.safaribooksonline.com/book/web-development/xml/9780132886741" xml:id="bib_Walmsley02"> <abbrev>Walmsley2002</abbrev> diff --git a/Doc/Common/glossary.xml b/Doc/Common/glossary.xml index ec366f1a1..529a8b99b 100644 --- a/Doc/Common/glossary.xml +++ b/Doc/Common/glossary.xml @@ -49,7 +49,7 @@ <glossterm><acronym>CSS</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/Style/CSS">Cascading Style + <para><link xlink:href="https://www.w3.org/Style/CSS">Cascading Style Sheets</link></para> </glossdef> </glossentry> @@ -78,7 +78,7 @@ <glossterm><acronym>DOM</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/DOM">Document Object + <para><link xlink:href="https://www.w3.org/DOM">Document Object Model</link></para> </glossdef> </glossentry> @@ -128,7 +128,7 @@ <glossdef> <para><link - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">Formatting + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">Formatting Objects</link></para> </glossdef> </glossentry> @@ -147,7 +147,7 @@ <listitem> <para><link - xlink:href="http://www.eclipse.org/eclipselink">Eclipse + xlink:href="https://www.eclipse.org/eclipselink">Eclipse link</link></para> </listitem> </itemizedlist> @@ -168,7 +168,7 @@ <glossterm><orgname>HdM</orgname></glossterm> <glossdef> - <para><link xlink:href="http://www.hdm-stuttgart.de" + <para><link xlink:href="https://www.hdm-stuttgart.de" xml:lang="de">Hochschule der Medien</link></para> </glossdef> </glossentry> @@ -178,7 +178,7 @@ <glossdef> <para><link - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">Hibernate + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">Hibernate Query Language</link></para> </glossdef> </glossentry> @@ -187,7 +187,7 @@ <glossterm><acronym>HTML</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/TR/html5">Hypertext Markup + <para><link xlink:href="https://www.w3.org/TR/html5">Hypertext Markup Language, version 5</link></para> </glossdef> </glossentry> @@ -196,7 +196,7 @@ <glossterm><acronym>HTTP</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/Protocols">HyperText + <para><link xlink:href="https://www.w3.org/Protocols">HyperText Transfer Protocol</link></para> </glossdef> </glossentry> @@ -242,7 +242,7 @@ <glossdef> <para - xlink:href="http://docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.2.1">Integral + xlink:href="https://docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.2.1">Integral Types and Values</para> </glossdef> </glossentry> @@ -416,7 +416,7 @@ <glossterm><productname>Maven</productname></glossterm> <glossdef> - <para><link xlink:href="http://maven.apache.org">Software project + <para><link xlink:href="https://maven.apache.org">Software project management and comprehension tool</link></para> </glossdef> </glossentry> @@ -425,7 +425,7 @@ <glossterm><orgname>MIB</orgname></glossterm> <glossdef> - <para><link xlink:href="http://www.mi.hdm-stuttgart.de" + <para><link xlink:href="https://www.mi.hdm-stuttgart.de" xml:lang="de">Medieninformatik (Bachelor)</link></para> </glossdef> </glossentry> @@ -455,7 +455,7 @@ <glossterm><acronym>PHP</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.php.net">Hypertext + <para><link xlink:href="https://secure.php.net">Hypertext Preprocessor</link></para> </glossdef> </glossentry> @@ -473,7 +473,7 @@ <glossterm>pom.xml</glossterm> <glossdef> - <para><link xlink:href="http://maven.apache.org">project object + <para><link xlink:href="https://maven.apache.org">project object model</link> file describing a <link linkend="glo_Maven">Maven</link> project or module</para> </glossdef> @@ -512,7 +512,7 @@ <glossdef> <para><link - xlink:href="http://en.wikipedia.org/wiki/Server_Message_Block">Server + xlink:href="https://en.wikipedia.org/wiki/Server_Message_Block">Server Message Block</link></para> </glossdef> </glossentry> @@ -528,7 +528,7 @@ <glossdef> <para><link - xlink:href="http://directory.apache.org/studio">Apache Directory + xlink:href="https://directory.apache.org/studio">Apache Directory Studio</link></para> </glossdef> </glossentry> @@ -547,7 +547,7 @@ <glossdef> <para>Java <link linkend="glo_IDE">IDE</link> available from - <link xlink:href="http://eclipse.org">eclipse.org</link>.</para> + <link xlink:href="https://eclipse.org">eclipse.org</link>.</para> </glossdef> </glossentry> @@ -555,7 +555,7 @@ <glossterm><productname>Git</productname></glossterm> <glossdef> - <para><link xlink:href="http://git-scm.com">The Git version + <para><link xlink:href="https://git-scm.com">The Git version control system</link></para> </glossdef> </glossentry> @@ -565,7 +565,7 @@ <glossdef> <para><link - xlink:href="http://www.mysql.com/about/legal/trademark.html">The + xlink:href="https://www.mysql.com/about/legal/trademark.html">The <acronym>Mysql</acronym> database server product</link></para> </glossdef> </glossentry> @@ -671,7 +671,7 @@ <glossterm><acronym>URL</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.ietf.org/rfc/rfc1738.txt">Uniform + <para><link xlink:href="https://www.ietf.org/rfc/rfc1738.txt">Uniform resource locator</link></para> </glossdef> </glossentry> @@ -718,7 +718,7 @@ <glossterm><acronym>XML</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/XML">Extended Markup + <para><link xlink:href="https://www.w3.org/XML">Extended Markup Language</link></para> </glossdef> </glossentry> @@ -727,7 +727,7 @@ <glossterm><acronym>XPath</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/TR/xpath">XML Path + <para><link xlink:href="https://www.w3.org/TR/xpath">XML Path Language</link></para> </glossdef> </glossentry> @@ -736,7 +736,7 @@ <glossterm><acronym>XSD</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/XML/Schema">XML Schema + <para><link xlink:href="https://www.w3.org/XML/Schema">XML Schema Definition</link></para> </glossdef> </glossentry> @@ -745,7 +745,7 @@ <glossterm><acronym>XSL</acronym></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/Style/XSL">Extended + <para><link xlink:href="https://www.w3.org/Style/XSL">Extended Stylesheet Language</link></para> </glossdef> </glossentry> diff --git a/Doc/Common/outdatedBibliography.xml b/Doc/Common/outdatedBibliography.xml index 9674584af..b34dcfc11 100644 --- a/Doc/Common/outdatedBibliography.xml +++ b/Doc/Common/outdatedBibliography.xml @@ -63,7 +63,7 @@ </publisher> <title xlink:href="http://www.greenfoot.org/book"><productname - xlink:href="http://www.pearson-studium.de/386894902X.html">Einführung in + xlink:href="https://www.pearson-studium.de/386894902X.html">Einführung in Java mit Greenfoot</productname></title> </biblioentry> </bibliography> diff --git a/Doc/Sd1/appendix.xml b/Doc/Sd1/appendix.xml index f90c25e40..4df9e1527 100644 --- a/Doc/Sd1/appendix.xml +++ b/Doc/Sd1/appendix.xml @@ -54,7 +54,7 @@ <glossdef> <para><link - xlink:href="http://chortle.ccsu.edu/java5/index.html">Original + xlink:href="https://chortle.ccsu.edu/java5/index.html">Original English version</link> and <link xlink:href="http://www.gailer-net.de/tutorials/java/java-toc.html">German translation</link>.</para> @@ -74,11 +74,11 @@ <glossentry> <glossterm><uri - xlink:href="http://rosettacode.org">rosettacode.org</uri></glossterm> + xlink:href="https://rosettacode.org">rosettacode.org</uri></glossterm> <glossdef> <para><link - xlink:href="http://rosettacode.org/wiki/Category:Programming_Tasks">Programming + xlink:href="https://rosettacode.org/wiki/Category:Programming_Tasks">Programming tasks</link> (including solutions for multiple languages).</para> </glossdef> </glossentry> @@ -88,7 +88,7 @@ <glossdef> <para><link - xlink:href="http://www.reddit.com/r/dailyprogrammer">Daily + xlink:href="https://www.reddit.com/r/dailyprogrammer">Daily Programmer</link>.</para> </glossdef> </glossentry> @@ -130,7 +130,7 @@ <glossdef> <para>Take the <link - xlink:href="http://www.home.hs-karlsruhe.de/~pach0003/informatik_1/aufgaben/en/java.html">easier + xlink:href="https://www.home.hs-karlsruhe.de/~pach0003/informatik_1/aufgaben/en/java.html">easier exercises</link>.</para> </glossdef> </glossentry> diff --git a/Doc/Sd1/arrays.xml b/Doc/Sd1/arrays.xml index 023a7443e..c330903fc 100644 --- a/Doc/Sd1/arrays.xml +++ b/Doc/Sd1/arrays.xml @@ -1307,7 +1307,7 @@ public class Driver { the <xref linkend="glo_Junit"/> method <methodname xlink:href="http://junit.sourceforge.net/javadoc/org/junit/Assert.html#assertEquals(double,%20double)">assertEquals()</methodname>to be marked as <link - xlink:href="http://docs.oracle.com/javase/1.5.0/docs/guide/javadoc/deprecation/deprecation.html">deprecated</link>. + xlink:href="https://docs.oracle.com/javase/1.5.0/docs/guide/javadoc/deprecation/deprecation.html">deprecated</link>. Give a reason why this decision has been taken. The answer may guide you in finding a more appropriate test.</para> </caution> @@ -1454,9 +1454,9 @@ public void testApp() { to an arbitrary limit (say limit == 10000) and returns the number of primes within [2, limit]. Measure this method's execution time. You may want to consult <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/System.html#currentTimeMillis--">System.currentTimeMillis()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#currentTimeMillis--">System.currentTimeMillis()</methodname> or <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/System.html#nanoTime--">System.nanoTime()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#nanoTime--">System.nanoTime()</methodname> for that purpose.</para> </listitem> </orderedlist> @@ -1576,7 +1576,7 @@ public void testApp() { 143 % 11 == 0 ? Yes ==> 143 is not prime</programlisting> <para>Learning from <link - xlink:href="http://en.wikipedia.org/wiki/Prime_factor">prime + xlink:href="https://en.wikipedia.org/wiki/Prime_factor">prime factorization</link> it actually suffices testing only prime values rather than all integer values up to the already discussed square root limit:</para> @@ -1640,7 +1640,7 @@ public void testApp() { <title>The median of a given sample.</title> <para>Read the <link - xlink:href="http://en.wikipedia.org/wiki/Median">definition of a given + xlink:href="https://en.wikipedia.org/wiki/Median">definition of a given sample's median</link>.</para> <qandaset defaultlabel="qanda" xml:id="sd1QandaMedian"> @@ -1687,7 +1687,7 @@ public void testApp() { <para>You may either construct a suitable copy containing the current elements yourself or get enlightened by reading the <xref linkend="glo_API"/> documentation of <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Arrays.html#copyOfRange-int:A-int-int-">copyOfRange(...)</link>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Arrays.html#copyOfRange-int:A-int-int-">copyOfRange(...)</link>.</para> </caution> </listitem> @@ -1851,7 +1851,7 @@ Your sample's median is: 1.0</programlisting> <orderedlist> <listitem> <para>The <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Arrays.html#copyOfRange-int:A-int-int-">copyOfRange(...)</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Arrays.html#copyOfRange-int:A-int-int-">copyOfRange(...)</link> method in <methodname xlink:href="Ref/api/P/Array/integerStoreMedianAnswer/de/hdm_stuttgart/mi/sd1/store/IntegerStore.html#getValues--">getValues()</methodname> returns that portion of our <code>int[] values</code> array diff --git a/Doc/Sd1/collections.xml b/Doc/Sd1/collections.xml index b22403336..dc9b09f0b 100644 --- a/Doc/Sd1/collections.xml +++ b/Doc/Sd1/collections.xml @@ -85,18 +85,18 @@ <section xml:id="sd1Collection2exerciseSetString"> <title>A <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> of Strings</title> <qandaset defaultlabel="qanda" xml:id="sd1QandaSetString"> <title>Inserting strings into a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname>.</title> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname>.</title> <qandadiv> <qandaentry> <question> <para>Create a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> of String instances including duplicates. Iterate over this set and write each value to <code>System.out</code>:</para> @@ -147,18 +147,18 @@ Eve</programlisting> <section xml:id="sd1CollectionExerciseListString"> <title>A <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname> of Strings</title> <qandaset defaultlabel="qanda" xml:id="sd1QandaListString"> <title>Inserting strings into a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname>.</title> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname>.</title> <qandadiv> <qandaentry> <question> <para>Create a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname> of String instances including duplicates. Iterate over this list and write each value to <code>System.out</code>:</para> @@ -230,9 +230,9 @@ Jim</programlisting> <para>Provide an appropriate constructor and override both <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--">toString()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--">toString()</methodname> and <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> to allow execution of:</para> <programlisting language="java"> // Defining and testing integer coordinates @@ -260,9 +260,9 @@ c12.equals("dummy"):false <answer> <para>Overriding <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--">toString()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--">toString()</methodname> and <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> and adding a non-default constructor is a straightforward exercise:</para> @@ -303,20 +303,20 @@ c12.equals("dummy"):false <section xml:id="sd1SetCoordinate"> <title>A <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> of Coordinate instances</title> <qandaset defaultlabel="qanda" xml:id="sd1QandaSetCoordinate"> <title>Inserting <link linkend="sd1CollectionDefCoordinate"><classname>Coordinate</classname></link> instances into a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname>.</title> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname>.</title> <qandadiv> <qandaentry> <question> <para>Create a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> of <link linkend="sd1CollectionDefCoordinate"><classname>Coordinate</classname></link> instances including duplicates. Iterate over this set and write @@ -357,9 +357,9 @@ c12.equals("dummy"):false (1|2)</programlisting> <para>This is due to our own fault not providing a <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashCode()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashCode()</methodname> implementation being compatible to our overridden <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> method. Consider:</para> <programlisting language="java"> final Coordinate @@ -379,21 +379,21 @@ c12.equals("dummy"):false xlink:href="http://tutorials.jenkov.com/java-collections/hashcode-equals.html">Java Collections - hashCode() and equals()</link>. The values actually stem from <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashCode()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashCode()</methodname> being defined in our superclass <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html">Object</classname>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html">Object</classname>.</para> <para>The former exercise <xref linkend="sd1QandaSetString"/> involved instances of class String having well defined <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#equals-java.lang.Object-">equals()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#equals-java.lang.Object-">equals()</methodname> and <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#hashCode--">hashCode()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#hashCode--">hashCode()</methodname> implementations. To resolve this issue we thus have to override not just <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals()</methodname> but <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashCode()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashCode()</methodname> as well:</para> <programlisting language="java">public class Coordinate { @@ -430,7 +430,7 @@ c12.equals("dummy"):false <section xml:id="sd1CollectionExerciseWordSearch"> <title>Getting a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> of strings from a text file</title> <qandaset defaultlabel="qanda" xml:id="sd1QandaWordSearch"> @@ -499,7 +499,7 @@ c12.equals("dummy"):false <emphasis role="bold"><code>.,:;?!"</code></emphasis> or white space characters may be achieved by means of <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-">split(...)</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-">split(...)</methodname> and the regular expression <code>String regex = "[ \t\"!?.,'´`:;]+"</code>;. This <quote>+</quote> sign indicates the appearance of a succession of one ore more @@ -564,9 +564,9 @@ c12.equals("dummy"):false <answer> <para>The desired result is easy to achieve by exchanging our <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname> by a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html">SortedSet</classname>:</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/SortedSet.html">SortedSet</classname>:</para> <programlisting language="java"> /** * The set of words found so far. @@ -618,15 +618,15 @@ printer</programlisting> <orderedlist> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#sort-java.util.List-java.util.Comparator-">Collections.sort(</link>List<String>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#sort-java.util.List-java.util.Comparator-">Collections.sort(</link>List<String>, <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator</classname> c) is your friend.</para> </listitem> <listitem> <para>Defining a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator</classname> class acting on strings works like:</para> <programlisting language="java">/** @@ -708,7 +708,7 @@ You found Pascal!"</programlisting> <listitem> <para>Define a class <classname>WordFrequency</classname> containing a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> attribute among with an integer number representing its frequency of appearance:</para> @@ -735,9 +735,9 @@ public class WordFrequency { any frequency value.</para> <para>Override <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals(...)</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-">equals(...)</methodname> and <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashValue()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">hashValue()</methodname> accordingly.</para> </listitem> @@ -790,9 +790,9 @@ public class WordFrequency { <para>After processing the input text file sort your <code>List<WordFrequency></code> by a suitable <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator<WordFrequency></classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator<WordFrequency></classname> instance by means of <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#sort-java.util.List-java.util.Comparator-">Collections.sort(...)</methodname>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#sort-java.util.List-java.util.Comparator-">Collections.sort(...)</methodname>.</para> </listitem> </orderedlist> </listitem> @@ -966,7 +966,7 @@ End of records</programlisting> actually initialize the desired address fields <code>firstName</code>, <code>lastName</code>, ..., <code>web</code>. Hint: You may use the <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-">split(...)</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-">split(...)</link> method:</para> <programlisting language="java">... = s.split("\",\"");</programlisting> @@ -1057,7 +1057,7 @@ End of records</programlisting> <para>This requires textually replacing special characters by the above entities e.g. by means of <classname>String</classname>.<methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#replace-java.lang.CharSequence-java.lang.CharSequence-">replace(...)</methodname>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#replace-java.lang.CharSequence-java.lang.CharSequence-">replace(...)</methodname>.</para> </glossdef> </glossentry> </glosslist> @@ -1110,11 +1110,11 @@ End of records</programlisting> <listitem> <para>You may direct your generated HTML output to a file rather than to the standard output <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/System.html#out">System.out</link>. + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#out">System.out</link>. This can be achieved by opening an output <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/PrintStream.html">PrintStream</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/PrintStream.html">PrintStream</classname> related to a file by means of the <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/PrintStream.html#PrintStream-java.lang.String-">PrintStream</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/PrintStream.html#PrintStream-java.lang.String-">PrintStream</methodname> output filename constructor. Your resulting output may transform the file <filename>addresses.txt</filename> into <filename>addresses.txt.xhtml</filename>. The latter should be @@ -1152,7 +1152,7 @@ End of records</programlisting> <question> <para>We want to partly implement a simplified version of <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname>:</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html">Set</classname>:</para> <programlisting language="java">package de.hdm_stuttgart.mi.sd1.stringset; @@ -1288,7 +1288,7 @@ public interface Set_String { <listitem> <para>On lookup use hash code values prior to comparing via <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#equals-java.lang.Object-">equals()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#equals-java.lang.Object-">equals()</methodname> in order to gain performance.</para> </listitem> </orderedlist> @@ -1375,28 +1375,28 @@ public interface Set_String { <para>A cleaner solution might conceive the above result output as a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>>. + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>>. The set of words appearing in a text will be regarded as keys. The frequencies of appearance are corresponding values:</para> <informaltable border="1" width="40%"> <tr> <th colspan="2"><classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>></th> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>></th> </tr> <tr> <th>Word (<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>)</th> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>)</th> <th>Frequency (<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>)</th> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>)</th> </tr> <tr> @@ -1432,10 +1432,10 @@ public interface Set_String { <qandaset defaultlabel="qanda" xml:id="sde1QandaWordFreqMap"> <title>Implementing word frequencies by <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>> instances.</title> <qandadiv> @@ -1445,10 +1445,10 @@ public interface Set_String { replacing your <classname xlink:href="Ref/api/P/WordFrequency1/Solution/de/hdm_stuttgart/mi/sd1/textstat/WordFrequency.html">WordFrequency</classname> object by an instance of <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>>. + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>>. For the time being consider the output sorting order yet as irrelevant.</para> </question> @@ -1465,7 +1465,7 @@ public interface Set_String { <para>The subsequent exercise is considered to be optional with respect to the final course's examination. It does however provide some deeper insight into the subject of <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname> instances.</para> <qandaset defaultlabel="qanda" xml:id="sde1QandaWordFreqMapSortOrder"> @@ -1479,22 +1479,22 @@ public interface Set_String { in <xref linkend="sd1CollectionWordFrequencies"/>.</para> <para>Hint: Following the discussion in <quote - xlink:href="http://stackoverflow.com/questions/11647889/sorting-the-mapkey-value-in-descending-order-based-on-the-value">Sorting + xlink:href="https://stackoverflow.com/questions/11647889/sorting-the-mapkey-value-in-descending-order-based-on-the-value">Sorting the Map<Key,Value> in descending order based on the value</quote> you may create a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname><<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html">Entry</classname>(<<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html">List</classname><<classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.Entry.html">Entry</classname>(<<classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>>> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>>> from your <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html">Map</classname><<classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname>, <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html">Integer</classname>> instance on demand (i.e. when sorting). Then define an appropriate <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html">Comparator</classname> class to get this list sorted.</para> </question> diff --git a/Doc/Sd1/coreClasses.xml b/Doc/Sd1/coreClasses.xml index beedbba69..93e59c674 100644 --- a/Doc/Sd1/coreClasses.xml +++ b/Doc/Sd1/coreClasses.xml @@ -67,7 +67,7 @@ strings</link> inside the first argument. It uses the <acronym>varargs</acronym> mechanism being described in the <link - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc2_html_5#toc2">Java + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc2_html_5#toc2">Java classes section of chapter 4</link>.</para> </listitem> @@ -118,16 +118,16 @@ java.util.IllegalFormatConversionException: <emphasis role="bold">d != java.lang <section xml:id="sw1SectionCoreClassesUsingMath"> <title>Using class <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">Math</classname></title> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">Math</classname></title> <para><classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">Math</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">Math</classname> is yet another class belonging to the core set of the <xref linkend="glo_Java"/> programing language.</para> <qandaset defaultlabel="qanda" xml:id="sw1QandaSquareAreaMathPackage"> <title>Using constants from <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">java.lang.Math</classname>.</title> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">java.lang.Math</classname>.</title> <qandadiv> <qandaentry> @@ -154,15 +154,15 @@ java.util.IllegalFormatConversionException: <emphasis role="bold">d != java.lang </m:math> </inlineequation> yourself. Actually <xref linkend="glo_Java"/> predefines constants in <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">java.lang.Math</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">java.lang.Math</classname> class. Read its documentation to rewrite your code thereby replacing your own variable <code>pi</code>'s definition .</para> <tip> <para>You may want to read the <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc11_html_2">Static + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc11_html_2">Static Members</quote> and <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc6_html_4">Java + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc6_html_4">Java Packages</quote> sections .</para> </tip> </question> @@ -179,11 +179,11 @@ java.util.IllegalFormatConversionException: <emphasis role="bold">d != java.lang }</programlisting> <para>In case you bother about using the somewhat clumsy <varname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#PI">Math.PI</varname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#PI">Math.PI</varname> expression rather than just using <varname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#PI">PI</varname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#PI">PI</varname> itself some syntactic sugar is on offer by means of a <link - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc13_html">static + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc13_html">static import</link> statement:</para> <programlisting language="java" linenumbering="unnumbered"><emphasis @@ -226,11 +226,11 @@ public final class Math { ...</programlisting> <para>This accounts for using the expression <code><varname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#field.summary">Math.PI</varname></code>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#field.summary">Math.PI</varname></code>.</para> <para>The careful reader may have expected an <code>import</code> statement in order to use the <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">Math</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">Math</classname> class:</para> <programlisting language="java">import java.lang.<emphasis @@ -344,7 +344,7 @@ public class CircleAreaCalculator { <listitem> <para>The <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> class does contain a method to retrieve a substring starting and ending at given index positions. Read its documentation to find it.</para> @@ -352,9 +352,9 @@ public class CircleAreaCalculator { <listitem> <para>The <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> class does contain a method returning the <code - xlink:href="http://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc3_html_3">char</code> + xlink:href="https://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc3_html_3">char</code> value at a given index. Read the documentation to find it.</para> </listitem> @@ -370,9 +370,9 @@ public class CircleAreaCalculator { <para>We present a step by step solution. We start by coding a loop creating the set of all substrings of length 13. Reading the <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> documentation the method<methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#substring-int-int-"> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#substring-int-int-"> substring(...)</methodname> allows for accessing the set of all substrings of 13 adjacent digits:</para> @@ -418,7 +418,7 @@ public class CircleAreaCalculator { 0420752963450</programlisting> <para>The method <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#charAt-int-">charAt(int + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#charAt-int-">charAt(int index)</methodname> allows us to access each character within our string individually. We need to write a method which converts a digit like '4' to the value 4. Remember: The Unicode value of e.g. @@ -464,11 +464,11 @@ public class CircleAreaCalculator { actually 2,700,507,600. This exceeds <code xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html#MAX_VALUE">MAX_VALUE</code> of 2,147,483,647 <link - xlink:href="http://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc3_html_3">being + xlink:href="https://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc3_html_3">being representable by a 4 byte <code>int</code> variable</link>.</para> <para>Luckily a <code>long</code> variable <link - xlink:href="http://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc3_html_3">will + xlink:href="https://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc3_html_3">will be able to hold positive values up to 9,223,372,036,854,775,807</link>. This is much larger than our <quote>worst case</quote> 9 × 9 × 9 × 9 × 9 × 9 × 9 × 9 × 9 × 9 × @@ -573,9 +573,9 @@ public class CircleAreaCalculator { <listitem> <para>Read the documentation of <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/System.html#identityHashCode-java.lang.Object-">System.identityHashCode(Object + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#identityHashCode-java.lang.Object-">System.identityHashCode(Object o)</link> and <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">Object.hashCode()</link>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">Object.hashCode()</link>.</para> </listitem> </itemizedlist> </tip> @@ -612,13 +612,13 @@ b1.equals(b2): true </programlisting> role="bold">"TestA" == "TestA"</emphasis>);</programlisting> <para>The method <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/System.html#identityHashCode-java.lang.Object-">System.identityHashCode(Object + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#identityHashCode-java.lang.Object-">System.identityHashCode(Object o)</link> returns <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">Object.hashCode()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--">Object.hashCode()</link> rather then <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html#hashCode--">String.hashCode()</link>. + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#hashCode--">String.hashCode()</link>. This hash code from <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html">java.lang.Object</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html">java.lang.Object</link> has a one to one correspondence to an object's reference and thus helps to understand the underlying object references:</para> @@ -720,7 +720,7 @@ b1.equals(b2): true </programlisting> <orderedlist> <listitem> <para>The <link - xlink:href="http://prog.medieninformatik.hdm-stuttgart.de/java_visualize">Java + xlink:href="https://prog.medieninformatik.hdm-stuttgart.de/java_visualize">Java visualizer</link> may be helpful.</para> </listitem> diff --git a/Doc/Sd1/deployment.xml b/Doc/Sd1/deployment.xml index 3152f959b..167452920 100644 --- a/Doc/Sd1/deployment.xml +++ b/Doc/Sd1/deployment.xml @@ -13,7 +13,7 @@ <title>Preparations</title> <para>Read <link - xlink:href="http://www.cs.swarthmore.edu/~newhall/unixhelp/debuggingtips_Java.html">http://www.cs.swarthmore.edu/~newhall/unixhelp/debuggingtips_Java.html</link> + xlink:href="https://www.cs.swarthmore.edu/~newhall/unixhelp/debuggingtips_Java.html">http://www.cs.swarthmore.edu/~newhall/unixhelp/debuggingtips_Java.html</link> up to including the <quote>The <code>CLASSPATH</code> environment variable and JAR files</quote> section.</para> </section> @@ -72,7 +72,7 @@ <para>You may search the <xref linkend="glo_API"/> of class <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Character.html">Character</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Character.html">Character</classname> assisting you to distinguish letters from non-letters.</para> </listitem> @@ -160,7 +160,7 @@ Your sample's median is: 6.0</programlisting> 7</code></quote> to your <code>main(String [] args)</code> method. These strings must be converted to integer values. This may be achieved by means of <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html#parseInt-java.lang.String-">parseInt(String)</methodname>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html#parseInt-java.lang.String-">parseInt(String)</methodname>.</para> <para>Depending on inconsistent user input like <quote><code>three</code></quote> instead of @@ -317,9 +317,9 @@ public class InputValidator { <para>Among several configuration possibilities you may use the <link - xlink:href="http://maven.apache.org/plugins/maven-jar-plugin">Maven + xlink:href="https://maven.apache.org/plugins/maven-jar-plugin">Maven JAR Plugin</link> and its <option - xlink:href="http://maven.apache.org/plugins/maven-jar-plugin/usage.html#How_to_build_a_JAR_file">package</option> + xlink:href="https://maven.apache.org/plugins/maven-jar-plugin/usage.html#How_to_build_a_JAR_file">package</option> goal. You have to add this plugin to the <tag class="starttag">plugins</tag> section of your <filename>pom.xml</filename> file. The plugin in turn requires diff --git a/Doc/Sd1/gettingStarted.xml b/Doc/Sd1/gettingStarted.xml index c4ee4e1b6..f0225d401 100644 --- a/Doc/Sd1/gettingStarted.xml +++ b/Doc/Sd1/gettingStarted.xml @@ -28,7 +28,7 @@ possible limitations with respect to the number of concurrent sessions HdM Members <emphasis>might</emphasis> be able to access this book online at <uri - xlink:href="http://proquest.safaribooksonline.com/9780992133047">http://proquest.safaribooksonline.com/9780992133047</uri>.</para> + xlink:href="https://proquest.safaribooksonline.com/9780992133047">http://proquest.safaribooksonline.com/9780992133047</uri>.</para> </listitem> </itemizedlist> </glossdef> @@ -68,7 +68,7 @@ <itemizedlist> <listitem> <para><link - xlink:href="http://software-carpentry.org/v4/shell">The + xlink:href="https://software-carpentry.org/v4/shell">The Unix Shell</link> / Software-carpentry, nice video collection. Each section is also available in PDF and <trademark>PowerPoint</trademark> format.</para> @@ -111,7 +111,7 @@ program's memory management:</para> <para><link - xlink:href="http://prog.medieninformatik.hdm-stuttgart.de/java_visualize">http://prog.medieninformatik.hdm-stuttgart.de/java_visualize</link></para> + xlink:href="https://prog.medieninformatik.hdm-stuttgart.de/java_visualize">http://prog.medieninformatik.hdm-stuttgart.de/java_visualize</link></para> <para>Credits to <link xlink:href="https://github.com/daveagp/java_visualize/blob/master/README">David @@ -137,10 +137,10 @@ <itemizedlist> <listitem> <para><link - xlink:href="http://wiki.eclipse.org/Eclipse/Installation">Installation</link>, + xlink:href="https://wiki.eclipse.org/Eclipse/Installation">Installation</link>, choose <quote>Eclipse IDE for Java EE Developers</quote> from <link - xlink:href="http://eclipse.org/downloads">http://eclipse.org/downloads</link>.</para> + xlink:href="https://eclipse.org/downloads">http://eclipse.org/downloads</link>.</para> </listitem> </itemizedlist> </glossdef> @@ -178,22 +178,22 @@ installation.</para> <para>The image contains (hopefully) all related tools from the - <link xlink:href="http://www.mi.hdm-stuttgart.de">CSM</link> + <link xlink:href="https://www.mi.hdm-stuttgart.de">CSM</link> department's lecture room Linux installation with respect to the current and upcoming lectures:</para> <itemizedlist> <listitem> <para>Eclipse J2EE version with <productname - xlink:href="http://www.eclipse.org/datatools">Database developer + xlink:href="https://www.eclipse.org/datatools">Database developer tools</productname>, and <productname - xlink:href="http://git-scm.com">git</productname> plugins + xlink:href="https://git-scm.com">git</productname> plugins installed.</para> </listitem> <listitem> <para>A running <productname - xlink:href="http://www.mysql.com/">Mysql</productname> server + xlink:href="https://www.mysql.com/">Mysql</productname> server preconfigured with user <quote><code>hdmuser</code></quote>, password <quote><code>XYZ</code></quote> (<emphasis role="bold">capital letters!</emphasis>) and database @@ -207,7 +207,7 @@ based on <productname xlink:href="http://docbook.org/tdg5/index.html">docbook</productname> or <productname - xlink:href="http://en.wikipedia.org/wiki/Darwin_Information_Typing_Architecture">DITA</productname>.</para> + xlink:href="https://en.wikipedia.org/wiki/Darwin_Information_Typing_Architecture">DITA</productname>.</para> </listitem> </itemizedlist> @@ -272,7 +272,7 @@ xlink:href="https://cloud.mi.hdm-stuttgart.de/owncloud">https://cloud.mi.hdm-stuttgart.de/owncloud</link>. Client software for Linux, Android, <productname>IOS</productname>, Windows, MacOS available at <link - xlink:href="http://owncloud.org/sync-clients">http://owncloud.org/sync-clients</link>.</para> + xlink:href="https://owncloud.org/sync-clients">http://owncloud.org/sync-clients</link>.</para> </glossdef> </glossentry> diff --git a/Doc/Sd1/languageFundamentals.xml b/Doc/Sd1/languageFundamentals.xml index 9017fcd48..dd45e1dc2 100644 --- a/Doc/Sd1/languageFundamentals.xml +++ b/Doc/Sd1/languageFundamentals.xml @@ -21,7 +21,7 @@ <para>Which of the following names are legal variable names? Complete the following table and explain your decision with respect to the <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc4_html_3">variables</quote> + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc4_html_3">variables</quote> section.</para> <informaltable border="1"> @@ -354,7 +354,7 @@ <listitem> <para>A negative value in <link - xlink:href="http://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's + xlink:href="https://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's complement</link> representation starts with a <quote>1</quote> at its highest bit. Binary literals in <xref linkend="glo_Java"/> represent <code>int</code> @@ -445,7 +445,7 @@ <tip> <para>You may want to consider the <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc6_html_2">Literals</quote> + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc6_html_2">Literals</quote> section of <xref linkend="bib_Kurniawan2015"/> learning about hexadecimal integer value representation.</para> </tip> @@ -475,7 +475,7 @@ is <emphasis role="bold">always</emphasis> large enough to hold color intensity values ranging from 0 to 255. Give an answer being based on the <link - xlink:href="http://docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.2.1">specification</link> + xlink:href="https://docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.2.1">specification</link> and not just by try-and-error.</para> <para>The programmer tries to adopt the <link @@ -511,7 +511,7 @@ System.out.println("Maximum short value:" + maximum); <tip> <para>Which integer literals types do exist according to the <xref linkend="glo_Java"/> <link - xlink:href="http://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.1">standard</link>?</para> + xlink:href="https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.1">standard</link>?</para> </tip> </question> @@ -579,7 +579,7 @@ System.out.println("Maximum short value:" + maximum); <para>Even worse: The expression <code>0B10000000_00000000</code> is actually a four byte <code>int</code> literal using <link - xlink:href="http://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's + xlink:href="https://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's complement</link> representation. Thus its value is <inlineequation> <m:math display="inline"> @@ -688,12 +688,12 @@ System.out.println("Maximum short value:" + maximum); <para>In order to represent negative values as well <xref linkend="glo_Java"/> uses <link - xlink:href="http://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's + xlink:href="https://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's complement</link> representation. We provide some values:</para> <table border="1" xml:id="sw1Table4ByteIntegerRepresentation"> <caption>4 Byte <link - xlink:href="http://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's + xlink:href="https://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's complement</link> representation of <code>int</code> values.</caption> @@ -767,12 +767,12 @@ System.out.println("Maximum short value:" + maximum); </table> <para>Use <link - xlink:href="http://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.1"><code>int</code> + xlink:href="https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.1"><code>int</code> literals</link> in <link - xlink:href="http://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-BinaryNumeral">binary + xlink:href="https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-BinaryNumeral">binary representation</link> like e.g. <code>0B1100</code> in section <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc6_html_2">Literals</quote> + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc6_html_2">Literals</quote> in order to write an <code>int</code>'s minimum and maximum possible value to standard output.</para> @@ -788,7 +788,7 @@ System.out.println("Maximum short value:" + maximum); <answer> <para>We insert <link - xlink:href="http://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's + xlink:href="https://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's complement</link> representations of minimum and maximum int values according to <xref linkend="sw1Table4ByteIntegerRepresentation"/>.</para> @@ -882,7 +882,7 @@ System.out.println("Maximum short value:" + maximum); <tip> <para>You may want to read the <link - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc1_html_4">overview + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc1_html_4">overview section</link> on statements.</para> </tip> </question> @@ -1217,7 +1217,7 @@ System.out.println("New value=" + a);</programlisting> <tip> <para>You may want to read the <link - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc1_html_4">overview + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc1_html_4">overview section</link> on statements.</para> </tip> </question> @@ -1228,7 +1228,7 @@ System.out.println("New value=" + a);</programlisting> error.</para> <para>Since <xref linkend="glo_Java"/> uses <link - xlink:href="http://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's + xlink:href="https://en.wikipedia.org/wiki/Two's_complement#firstHeading">Two's complement</link> representation we have:</para> <informaltable border="1"> @@ -1452,7 +1452,7 @@ System.out.println("New value=" + a);</programlisting> <tip> <para>Hunt for <quote>java escape double quote</quote> and read about <link - xlink:href="http://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc6_html_2#readertoolbar2">character + xlink:href="https://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-2-language-fundamentals/toc6_html_2#readertoolbar2">character literals</link>.</para> </tip> </question> @@ -1568,7 +1568,7 @@ System.out.println("New value=" + a);</programlisting> <tip> <para>You may want to read the <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc5_html_2">Constants</quote> + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc5_html_2">Constants</quote> section of <xref linkend="bib_Kurniawan2015"/>.</para> </tip> </question> diff --git a/Doc/Sd1/objectsClasses.xml b/Doc/Sd1/objectsClasses.xml index b14fc1d7f..56a4cc271 100644 --- a/Doc/Sd1/objectsClasses.xml +++ b/Doc/Sd1/objectsClasses.xml @@ -72,7 +72,7 @@ <itemizedlist> <listitem> <para><link - xlink:href="http://stackoverflow.com/questions/24252256/how-to-enable-index-downloads-in-eclipse-for-maven-search">Enabling + xlink:href="https://stackoverflow.com/questions/24252256/how-to-enable-index-downloads-in-eclipse-for-maven-search">Enabling maven indexing</link> in Eclipse.</para> </listitem> </itemizedlist> @@ -110,9 +110,9 @@ javac 1.8.0_66</programlisting> <listitem> <para>Use the <link - xlink:href="http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/mars1">Eclipse + xlink:href="https://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/mars1">Eclipse IDE for Java EE Developers</link> flavour rather then merely <link - xlink:href="http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/mars1">Eclipse + xlink:href="https://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/mars1">Eclipse IDE for Java Developers</link>. Reason: The J2ee version does include (among other things) <xref linkend="glo_Maven"/>.</para> </listitem> @@ -283,7 +283,7 @@ javac 1.8.0_66</programlisting> <qandaentry> <question> <para>Extend the <link - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc2_html_5">Employee + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc2_html_5">Employee example from chapter 4</link> by adding two methods:</para> <itemizedlist> @@ -411,7 +411,7 @@ Salary:30000.00</pre> <tip> <para>Read the <link - xlink:href="http://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-4-objects-and-classes/toc8_html_3">section + xlink:href="https://proquest.safaribooksonline.com/book/programming/java/9780992133047/chapter-4-objects-and-classes/toc8_html_3">section about the <quote>this</quote></link> keyword.</para> </tip> </question> @@ -1253,7 +1253,7 @@ public class Driver { }</programlisting> <para>This error is in accordance with Table 4.1 from the <link - xlink:href="http://techbus.safaribooksonline.com/9780992133047/toc7_html_3">Encapsulation + xlink:href="https://techbus.safaribooksonline.com/9780992133047/toc7_html_3">Encapsulation and Access Control</link> section: The attributes <property>age</property> and <property>salary</property> have no access modifiers at all hence <quote>default</quote> access is @@ -1274,7 +1274,7 @@ public class Driver { <glossdef> <para>Raising access level from default to <code>public</code> thereby violating the <link - xlink:href="http://en.wikipedia.org/wiki/Encapsulation_(object-oriented_programming)">principle + xlink:href="https://en.wikipedia.org/wiki/Encapsulation_(object-oriented_programming)">principle of encapsulation</link>:</para> <programlisting language="java">public class Employee { @@ -1813,7 +1813,7 @@ Is 2016 a leap year? true</programlisting> <orderedlist> <listitem> <para>Consider the <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#sin-double-">sin(...)</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#sin-double-">sin(...)</link> function. The documentation will tell you that the argument to sin(...) is expected to be in radians rather than common degree values from [0,360[ being expected on output. So you @@ -1834,7 +1834,7 @@ Is 2016 a leap year? true</programlisting> <listitem> <para>Rounding the sine's value is the crucial part here. The function <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#round-double-">round()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#round-double-">round()</link> is quite helpful. Consider the following example rounding 23.22365 to four decimal places:</para> @@ -1845,7 +1845,7 @@ Is 2016 a leap year? true</programlisting> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#round-double-">round(232236.5)</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#round-double-">round(232236.5)</link> results in 232237 (long).</para> </listitem> @@ -2766,7 +2766,7 @@ Largest long value:9223372036854775807</programlisting></td> </inlineequation>.</para> <para>Cancelling fractions requires implementing e.g. the <link - xlink:href="http://www.math.rutgers.edu/~greenfie/gs2004/euclid.html">Euclidean + xlink:href="https://www.math.rutgers.edu/~greenfie/gs2004/euclid.html">Euclidean algorithm</link> in order to find the greatest common divisor (<acronym>GCD</acronym>) of two non-zero integer values.</para> @@ -2814,7 +2814,7 @@ Largest long value:9223372036854775807</programlisting></td> <para>Based on <methodname>getGcd(...)</methodname> implement the <link - xlink:href="http://en.wikipedia.org/wiki/Least_common_multiple">least + xlink:href="https://en.wikipedia.org/wiki/Least_common_multiple">least common multiple</link> of two long values:</para> <tip> @@ -4035,7 +4035,7 @@ System.out.println(factorial(3));</programlisting> or <link xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#nanoTime--">nanoTime</link>. <quote - xlink:href="http://www.mkyong.com/java/how-do-calculate-elapsed-execute-time-in-java">See + xlink:href="https://www.mkyong.com/java/how-do-calculate-elapsed-execute-time-in-java">See How to calculate elapsed / execute time in Java</quote>.</para> </tip> @@ -4351,7 +4351,7 @@ Ratio Recursive / Loop: 65554</programlisting></td> exp(double)</methodname> inside a class <package>Math</package> choosing a package of your choice. The name clash with the Java standard class <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">java.lang.Math</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html">java.lang.Math</link> is intended: You'll learn how to resolve naming conflicts.</para> @@ -4391,7 +4391,7 @@ Ratio Recursive / Loop: 65554</programlisting></td> <para>Compare your results using <code>seriesLimit=8</code> terms and the corresponding values from the professional implementation <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#exp-double">java.lang.Math.exp</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#exp-double">java.lang.Math.exp</link> by calculating <inlineequation> <m:math display="inline"> <m:msup> @@ -4921,7 +4921,7 @@ e^3=19.412499999999998, difference=-0.67303692318767</programlisting> </m:mrow> </m:math> </inlineequation> using <varname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#PI">java.lang.Math.PI</varname>. + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#PI">java.lang.Math.PI</varname>. Explain your results</para> </question> @@ -5983,7 +5983,7 @@ sin(4 * PI)=4518.2187229323445, difference=4518.2187229323445</programlisting> arguments to this interval appropriately.</para> <para>Hint: The standard function <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#floor-double-">Math.rint(double)</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#floor-double-">Math.rint(double)</methodname> could be helpful: It may turn e.g. 4.47 (<code>double</code>) to 4 (<code>long</code>).</para> </question> @@ -6039,9 +6039,9 @@ sin(4 * PI)=4518.2187229323445, difference=4518.2187229323445</programlisting> <title>Simulating a car jump</title> <para>We want to model a <link - xlink:href="http://www.sciencechannel.com/tv-shows/outrageous-acts-of-science/videos/insane-car-jump">car + xlink:href="https://www.sciencechannel.com/tv-shows/outrageous-acts-of-science/videos/insane-car-jump">car jump</link> to be used in a computer game. <link - xlink:href="http://www.sciencechannel.com/tv-shows/outrageous-acts-of-science/videos/insane-car-jump">Watch + xlink:href="https://www.sciencechannel.com/tv-shows/outrageous-acts-of-science/videos/insane-car-jump">Watch the video</link> to understand the subsequent explanations</para> <section xml:id="sd1SectCarJumpBasic"> diff --git a/Doc/Sd1/statements.xml b/Doc/Sd1/statements.xml index 98d57b4e0..696b58342 100644 --- a/Doc/Sd1/statements.xml +++ b/Doc/Sd1/statements.xml @@ -2022,7 +2022,7 @@ Congratulations! you won!</programlisting> <para>You will fully understand the above expression <function>Math.min(...)</function> after finishing the <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc12_html">Static + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc12_html">Static Final Variables</quote> section.</para> </answer> </qandaentry> @@ -2045,7 +2045,7 @@ Congratulations! you won!</programlisting> <tip> <para>The operator <quote - xlink:href="http://proquest.safaribooksonline.com/9780992133047/toc8_html">%</quote> + xlink:href="https://proquest.safaribooksonline.com/9780992133047/toc8_html">%</quote> allows for testing whether a given integer value <code>n</code> can be divided by an another integer value <code>k</code> without remainder.</para> @@ -2673,7 +2673,7 @@ Congratulations! you won!</programlisting> <para>As expected we find an identical value for the desired smallest integer value of 2*2*2*2*3*3*5*7*11*13*17*19 = 232792560 which is the <link - xlink:href="http://en.wikipedia.org/wiki/Least_common_multiple">least + xlink:href="https://en.wikipedia.org/wiki/Least_common_multiple">least common multiple</link> of [2, 3, ...20].</para> </answer> </qandaentry> @@ -2691,11 +2691,11 @@ Congratulations! you won!</programlisting> <qandaentry> <question> <para>Read the <link - xlink:href="http://en.wikipedia.org/wiki/Pythagorean_triple">definition + xlink:href="https://en.wikipedia.org/wiki/Pythagorean_triple">definition of Pythagorean triples</link>.</para> <para>Find all <link - xlink:href="http://en.wikipedia.org/wiki/Pythagorean_triple">Pythagorean + xlink:href="https://en.wikipedia.org/wiki/Pythagorean_triple">Pythagorean triples</link> <inlineequation> <m:math display="inline"> <m:mrow> diff --git a/Doc/Sd1/streams.xml b/Doc/Sd1/streams.xml index b898ae441..4fce7375b 100644 --- a/Doc/Sd1/streams.xml +++ b/Doc/Sd1/streams.xml @@ -69,7 +69,7 @@ <listitem> <para>Given the name of an existing file you may create an instance of <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname>:</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname>:</para> <programlisting language="java">final FileReader fileReader = new FileReader(inputFileName); final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</programlisting> @@ -77,20 +77,20 @@ final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</prog <listitem> <para>You will have to deal with possible <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/FileNotFoundException.html">FileNotFoundException</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/FileNotFoundException.html">FileNotFoundException</classname> problems providing meaningful error messages.</para> </listitem> <listitem> <para>The <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname> class provides a method <methodname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html#readLine--">readLine()</methodname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html#readLine--">readLine()</methodname> allowing to access a given file's content line by line.</para> <caution> <para>Even if a file exists you have my encounter <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/IOException.html">IOException</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html">IOException</classname> problems being related to <acronym>i.e.</acronym> missing permissions.</para> </caution> @@ -123,7 +123,7 @@ final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</prog <para>Notice the second test which will only succeed if a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/FileNotFoundException.html">FileNotFoundException</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/FileNotFoundException.html">FileNotFoundException</classname> is being thrown.</para> </answer> </qandaentry> @@ -139,14 +139,14 @@ final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</prog <question> <para>In this exercise we will partly implement the (Gnu) UNIX command line tool <command - xlink:href="http://www.gnu.org/software/coreutils/manual/html_node/wc-invocation.html">wc</command> + xlink:href="https://www.gnu.org/software/coreutils/manual/html_node/wc-invocation.html">wc</command> (word count). Prior to starting this exercise you may want to:</para> <itemizedlist> <listitem> <para>Execute <command - xlink:href="http://www.gnu.org/software/coreutils/manual/html_node/wc-invocation.html">wc</command> + xlink:href="https://www.gnu.org/software/coreutils/manual/html_node/wc-invocation.html">wc</command> for sample text files like e.g. a Java source file of similar:</para> @@ -157,7 +157,7 @@ final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</prog <para>What do these three numbers 58, 198 and 1341 mean? Execute <command>wc</command> <option>--help</option> or <command>man</command> <option>wc</option> or read the <link - xlink:href="http://www.gnu.org/software/coreutils/manual/html_node/wc-invocation.html">HTML + xlink:href="https://www.gnu.org/software/coreutils/manual/html_node/wc-invocation.html">HTML documentation</link>.</para> </listitem> @@ -176,7 +176,7 @@ final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</prog <listitem> <para><command>wc</command> can be used in <link - xlink:href="http://en.wikipedia.org/wiki/Pipeline_(Unix)">pipes</link> + xlink:href="https://en.wikipedia.org/wiki/Pipeline_(Unix)">pipes</link> () like:</para> <programlisting language="bourne">goik >grep int BoundedIntegerStore.java | wc @@ -223,16 +223,16 @@ final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</prog to and count characters, words and lines of a single input file. Instances of this class may be initialized from a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname>.</para> <para>Write corresponding tests.</para> </listitem> <listitem> <para>You may create an instance of <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/BufferedReader.html">BufferedReader</classname> from <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/lang/System.html#in">System.in</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/System.html#in">System.in</link> via:</para> <programlisting language="java">new BufferedReader(new InputStreamReader(System.in))</programlisting> @@ -241,7 +241,7 @@ final BufferedReader inputBufferedReader = new BufferedReader(fileReader);</prog <listitem> <para>Create an executable Jar archive and execute some examples. The UNIX command <command - xlink:href="http://www.gnu.org/software/coreutils/manual/html_node/cat-invocation.html#cat-invocation">cat</command> + xlink:href="https://www.gnu.org/software/coreutils/manual/html_node/cat-invocation.html#cat-invocation">cat</command> writes a file's content to standard output. This output may be piped as input to your application as in <code>cat filename.txt | java -jar .../wc-1.0.jar</code>.</para> diff --git a/Doc/Sda1/dom.xml b/Doc/Sda1/dom.xml index bb7cc760d..e5a18925a 100644 --- a/Doc/Sda1/dom.xml +++ b/Doc/Sda1/dom.xml @@ -8,10 +8,10 @@ xmlns:html="http://www.w3.org/1999/xhtml" xmlns:db="http://docbook.org/ns/docbook"> <title>The Document Object Model (<acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym>)</title> + xlink:href="https://www.w3.org/DOM">DOM</acronym>)</title> <titleabbrev><acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym></titleabbrev> + xlink:href="https://www.w3.org/DOM">DOM</acronym></titleabbrev> <section xml:id="sda1SectDomPreconditions"> <title>Required knowledge</title> @@ -53,7 +53,7 @@ <listitem> <para>Some applications may want to select node sets by <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> expressions + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> expressions which is completely impossible in a <acronym xlink:href="http://www.saxproject.org">SAX</acronym> application.</para> @@ -70,25 +70,25 @@ xlink:href="http://www.saxproject.org">SAX</acronym> is the fact that an XML instance is not represented as a tree like structure but as a succession of events. The <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> allows us to represent + xlink:href="https://www.w3.org/DOM">DOM</acronym> allows us to represent XML document instances as tree like structures and thus enables navigational operations between nodes.</para> <para>In order to achieve language <emphasis>and</emphasis> software vendor independence the <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> approach uses two + xlink:href="https://www.w3.org/DOM">DOM</acronym> approach uses two stages:</para> <itemizedlist> <listitem> - <para>The <acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> is + <para>The <acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> is formulated in an Interface Definition Language (<abbrev - xlink:href="http://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev>)</para> + xlink:href="https://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev>)</para> </listitem> <listitem> <para>In order to use the <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> API by a concrete + xlink:href="https://www.w3.org/DOM">DOM</acronym> API by a concrete programming language a so called <emphasis>language binding</emphasis> is required. In languages like <xref linkend="glo_Java"/> the language binding will still be a set of <xref linkend="glo_Java"/> interfaces. @@ -98,21 +98,21 @@ </itemizedlist> <para>So what exactly may an <abbrev - xlink:href="http://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> be? The programming language <xref linkend="glo_Java"/> already allows pure interface definitions without any implementation. In C++ the same result can be achieved by so called <emphasis>pure virtual classes</emphasis>. An <abbrev - xlink:href="http://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> offers extended features to describe such interfaces. For <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> the <productname + xlink:href="https://www.w3.org/DOM">DOM</acronym> the <productname xlink:href="http://www.omg.org/gettingstarted/corbafaq.htm">CORBA 2.2</productname> <abbrev - xlink:href="http://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> had been chosen to describe an XML document programming interface. As a first example we take an excerpt from the <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym>'s <link - xlink:href="http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-1950641247">Node</link> + xlink:href="https://www.w3.org/DOM">DOM</acronym>'s <link + xlink:href="https://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-1950641247">Node</link> interface definition:</para> <programlisting language="none">interface Node { @@ -138,15 +138,15 @@ ...</programlisting> <para>If we want to implement the <abbrev - xlink:href="http://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> <classname>org.w3c.dom.Node</classname> specification in e.g. <xref linkend="glo_Java"/> a language binding has to be defined. This means writing <xref linkend="glo_Java"/> code which closely resembles the <abbrev - xlink:href="http://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Interface_description_language">IDL</abbrev> specification. Obviously this task depends on and is restricted by the constructs being offered by the target programming language. The W3C <link - xlink:href="http://www.w3.org/TR/DOM-Level-3-Core/java-binding.html">defines</link> + xlink:href="https://www.w3.org/TR/DOM-Level-3-Core/java-binding.html">defines</link> the <xref linkend="glo_Java"/> <classname>org.w3c.dom.Node</classname> interface by:</para> @@ -204,13 +204,13 @@ public interface Node { <para>An XML API may address this issue by offering data types to represent these different kinds of nodes. The <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> <xref + xlink:href="https://www.w3.org/DOM">DOM</acronym> <xref linkend="glo_Java"/> Binding defines an inheritance hierarchy of interfaces for this purpose:</para> <figure xml:id="domJavaNodeInterfaces"> <title>Inheritance interface hierarchy in the <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> <xref + xlink:href="https://www.w3.org/DOM">DOM</acronym> <xref linkend="glo_Java"/> binding</title> <mediaobject> @@ -224,13 +224,13 @@ public interface Node { linkend="glo_DOM"/> implementation including parsers, XPath engines etc. .</para> - <para>The <acronym xlink:href="http://www.w3.org/DOM">DOM</acronym>'s + <para>The <acronym xlink:href="https://www.w3.org/DOM">DOM</acronym>'s specification defines a (still growing) set of<link - xlink:href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/introduction.html#DOMArchitecture-h2"> + xlink:href="https://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/introduction.html#DOMArchitecture-h2"> modules</link>. An implementation may not implement all of these:</para> <figure xml:id="figureDomModules"> - <title><acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> + <title><acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> modules.</title> <mediaobject> @@ -329,7 +329,7 @@ public interface Node { <listitem> <para>Create an empty <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/Document.html">Document</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/w3c/dom/Document.html">Document</link> instance.</para> </listitem> @@ -399,9 +399,9 @@ public class CreateDoc { <filename>pom.xml</filename>.</para> <para>The <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> creating example + xlink:href="https://www.w3.org/DOM">DOM</acronym> creating example given before may be used as a starting point. Extend the <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> tree created in + xlink:href="https://www.w3.org/DOM">DOM</acronym> tree created in <xref linkend="simpleDomCreate"/> to produce an extended XML document:</para> @@ -430,7 +430,7 @@ public class CreateDoc { xlink:href="http://www.saxproject.org">SAX</acronym> for parsing XML documents. Rather than handling <acronym xlink:href="http://www.saxproject.org">SAX</acronym> events ourselves we - prefer a <acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> (in + prefer a <acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> (in memory) representation of our document. The <link linkend="simpleCatalog">simple catalog</link> serves as an introductory example:</para> @@ -444,9 +444,9 @@ public class CreateDoc { xlink:href="http://www.saxproject.org/apidoc/org/xml/sax/ErrorHandler.html">ErrorHandler</classname> instance during <acronym xlink:href="http://www.saxproject.org">SAX</acronym> processing. A - <acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> Parser requires + <acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> Parser requires a means to communicate parsing errors in case of trouble. In principle a - <acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> parser + <acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> parser implementor is free to choose his implementation but most implementations are based on top of a so called <acronym xlink:href="http://www.saxproject.org">SAX</acronym> parser. The <acronym @@ -488,12 +488,12 @@ public class CreateDoc { }</programlisting> <para>We use this bit to assemble a <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> based <xref + xlink:href="https://www.w3.org/DOM">DOM</acronym> based <xref linkend="glo_XML"/> parsing application:.</para> <figure xml:id="domTreeTraversal"> <title>Accessing a XML Tree purely by <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> methods.</title> + xlink:href="https://www.w3.org/DOM">DOM</acronym> methods.</title> <programlisting language="java">public class ReadCatalog { @@ -857,12 +857,12 @@ Document contains 15 elements and 3 attributes.</programlisting> <xref linkend="createDocModify"/>. The idea is parsing the <link linkend="simpleCatalog">XML catalog instance</link> to a <xref linkend="glo_Java"/> <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> object as + xlink:href="https://www.w3.org/DOM">DOM</acronym> object as before. Then construct a <emphasis>second</emphasis> <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> tree + xlink:href="https://www.w3.org/DOM">DOM</acronym> tree representing the desired HTML output and fill in the article information from the first <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> tree + xlink:href="https://www.w3.org/DOM">DOM</acronym> tree accordingly.</para> <tip> @@ -1104,7 +1104,7 @@ public class Article2Html { <callout arearefs="programlisting_catalog2html_glue_createhtmldom" xml:id="programlisting_catalog2html_glue_createhtmldom_co"> <para>Create an instance holding a HTML <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> with a + xlink:href="https://www.w3.org/DOM">DOM</acronym> with a table header containing the strings <emphasis>Article Description</emphasis> and <emphasis>Order Number</emphasis>.</para> @@ -1119,13 +1119,13 @@ public class Article2Html { xml:id="programlisting_catalog2html_glue_insertprod_co"> <para>Insert the product's name an order number into the HTML <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym>.</para> + xlink:href="https://www.w3.org/DOM">DOM</acronym>.</para> </callout> <callout arearefs="programlisting_catalog2html_glue_serialize" xml:id="programlisting_catalog2html_glue_serialize_co"> <para>Serialize the completed HTML <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> tree to the + xlink:href="https://www.w3.org/DOM">DOM</acronym> tree to the output stream.</para> </callout> </calloutlist> @@ -1257,11 +1257,11 @@ public class Article2Html { </section> <section xml:id="domJavaScript"> - <title>Using <acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> + <title>Using <acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> with HTML/Javascript</title> <para>Due to script language support in a variety of browsers we may also - use the <acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> to + use the <acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> to implement client side event handling. As an example we <link xlink:href="Sda1/Ref/src/tablesort.html">demonstrate</link> a JavaScript based sortable HTML table. The example code along with the code @@ -1295,11 +1295,11 @@ public class Article2Html { <section xml:id="domXpath"> <title>Using <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym></title> + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym></title> <para><xref linkend="domTreeTraversal"/> demonstrated the possibility to traverse trees solely by using <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> Method calls. Though this + xlink:href="https://www.w3.org/DOM">DOM</acronym> Method calls. Though this approach is possible it will in general not lead to stable applications. Real world examples are often based on large XML documents with complex hierarchical structures. Thus using this rather primitive approach will @@ -1308,11 +1308,11 @@ public class Article2Html { large code portions..</para> <para>As we already know from <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> transformations + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> transformations <code>Xpath</code> allows to address node sets inside a XML tree. The role - of <acronym xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> can be + of <acronym xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> can be compared to SQL queries when working with relational databases. <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> may also be used + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> may also be used within <xref linkend="glo_Java"/> code. As a first example we show an image filename extracting application operating on XHTML documents. The following example contains three <tag class="starttag">img</tag> @@ -1353,7 +1353,7 @@ public class Article2Html { class="starttag">img</tag> elements:</para> <figure xml:id="gallery2imagelist"> - <title>A <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <title>A <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> script for image name extraction.</title> <programlisting language="xml"><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" @@ -1372,26 +1372,26 @@ public class Article2Html { <para>Note the necessity for <code>html</code> namespace (by prefix) inclusion into the <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> expression in + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> expression in <code><xsl:for-each select="//html:img"></code>. A simple <code>select="//img"></code> results in an empty node set. Executing - the <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> script + the <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> script yields a list of image filenames being contained in the HTML page i.e. <code>inline.gif one.gif two.gif</code>.</para> <para>As a preparation for an application checking image accessibility we want to rewrite the above <xref linkend="glo_XSL"/> as a <xref linkend="glo_Java"/> application. A simple approach may pipe the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> output to our + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> output to our application which then executes the readability checks. Instead we want to incorporate the <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> based search into + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> based search into the application itself. Trying to resemble the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> actions as closely + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> actions as closely as possible our application will also have to search for <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/w3c/dom/Element.html">Element</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/w3c/dom/Element.html">Element</link> Nodes by using the <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> expression + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> expression <code>//html:img</code>:</para> <figure xml:id="domFindImages"> @@ -1459,14 +1459,14 @@ public class Article2Html { <callout arearefs="programlisting_java_searchimg_pf" xml:id="programlisting_java_searchimg_pf_co"> <para>Retrieving an <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> factory + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> factory instance.</para> </callout> <callout arearefs="programlisting_java_searchimg_newxpath" xml:id="programlisting_java_searchimg_newxpath_co"> <para>Creating a <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> query + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> query instance. This may be used to search for a set of nodes starting from a context node. Notice the <varname>htmlNamespace</varname> instance which binds the prefix <quote>h</quote> to the <xref @@ -1562,7 +1562,7 @@ public class Article2Html { <para>Write an application which checks for readability of <abbrev - xlink:href="http://www.ietf.org/rfc/rfc1738.txt">URL</abbrev> + xlink:href="https://www.ietf.org/rfc/rfc1738.txt">URL</abbrev> image references to <emphasis>external</emphasis> Servers starting either with <code>http://</code> or <code>https://</code> ignoring other protocol types. Internal @@ -1573,7 +1573,7 @@ public class Article2Html { xlink:href="http://www.cafeconleche.org/books/bible2/chapters/ch17.html">starts-with()</link> testing for the <code>http</code> or <code>https</code> protocol definition part of an <abbrev - xlink:href="http://www.ietf.org/rfc/rfc1738.txt">URL</abbrev>. A + xlink:href="https://www.ietf.org/rfc/rfc1738.txt">URL</abbrev>. A possible output for the above example reads:</para> <programlisting language="none">xpath.CheckUrl (CheckUrl.java:51) - Protocol 'ftp' not yet implemented @@ -1590,7 +1590,7 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> agent is unable to handle the current resource's content type in question. You may catch a glimpse of related problems by reading <link - xlink:href="http://stackoverflow.com/questions/1378199/how-to-check-if-a-url-exists-or-returns-404-with-java">How + xlink:href="https://stackoverflow.com/questions/1378199/how-to-check-if-a-url-exists-or-returns-404-with-java">How to check if a URL exists or returns 404 with Java?</link>. For the current exercise we will not dig deeper into the subject.</para> @@ -1621,7 +1621,7 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> <para>For analyzing the accessibility of referenced <xref linkend="glo_HTTP"/> / <acronym>HTTPS</acronym> resources see the previously mentioned discussion in <link - xlink:href="http://stackoverflow.com/questions/1378199/how-to-check-if-a-url-exists-or-returns-404-with-java">How + xlink:href="https://stackoverflow.com/questions/1378199/how-to-check-if-a-url-exists-or-returns-404-with-java">How to check if a URL exists or returns 404 with Java?</link>.</para> </listitem> @@ -1632,7 +1632,7 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> <answer> <para>We are interested in the set of images within a given HTML document containing an <link - xlink:href="http://www.w3.org/Addressing">URL</link> reference + xlink:href="https://www.w3.org/Addressing">URL</link> reference starting with either of:</para> <itemizedlist> @@ -1650,7 +1650,7 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> </itemizedlist> <para>This may be achieved by the following <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> expression:</para> <programlisting language="none">//xhtml:img[starts-with(@src, 'http://') or @@ -1658,7 +1658,7 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> <para>Notice the prefix <quote>xhtml</quote> in the above <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym>. + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym>. Namespace handling is essential since our elements belong to the <xref linkend="glo_XHTML"/> namespace. We thus create a corresponding <classname @@ -1689,14 +1689,14 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> </section> <section xml:id="domXsl"> - <title><acronym xlink:href="http://www.w3.org/DOM">DOM</acronym> and - <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev></title> + <title><acronym xlink:href="https://www.w3.org/DOM">DOM</acronym> and + <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev></title> <para><xref linkend="glo_Java"/> based <xref linkend="glo_XML"/> applications may use XSL style sheets for processing. A <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> tree may for example be + xlink:href="https://www.w3.org/DOM">DOM</acronym> tree may for example be transformed into another tree. The package <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/transform/package-frame.html">javax.xml.transform</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/javax/xml/transform/package-frame.html">javax.xml.transform</link> provides interfaces and classes for this purpose. We consider the following product catalog example:</para> @@ -1777,12 +1777,12 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> </programlisting> </figure> - <para>A <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <para>A <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> style sheet may be used to transform this document into the HTML Format:</para> <figure xml:id="catalog2html"> - <title>A <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <title>A <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> style sheet for catalog transformation to HTML.</title> <programlisting language="xml"><?xml version="1.0" encoding="utf-8"?> @@ -1816,9 +1816,9 @@ http://www.hdm-stuttgart.de/rotfl.gif, HTTP Status: Found</programlisting> <para>As a preparation for <xref linkend="sda1SectCatalog2html"/> we now demonstrate the usage of <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> within a <xref + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> within a <xref linkend="glo_Java"/> application. This is done by a <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/transform/Transformer.html">Transformer</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/javax/xml/transform/Transformer.html">Transformer</link> instance:</para> <figure xml:id="xml2xml"> diff --git a/Doc/Sda1/fo.xml b/Doc/Sda1/fo.xml index 16c74c3fb..682e5ee20 100644 --- a/Doc/Sda1/fo.xml +++ b/Doc/Sda1/fo.xml @@ -17,7 +17,7 @@ <titleabbrev>online / print</titleabbrev> <para>We already learned how to transform XML documents into HTML by means - of a <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> style + of a <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> style sheet processor. In principle we may create printed output by using a HTML Browser's print function. However the result will not meet reasonable typographical standards. A list of commonly required features for printed @@ -65,8 +65,8 @@ <listitem> <para>Document internal references via <link - xlink:href="http://www.w3.org/TR/xml#id">ID</link> / <link - xlink:href="http://www.w3.org/TR/xml#idref">IDREF</link> pairs may + xlink:href="https://www.w3.org/TR/xml#id">ID</link> / <link + xlink:href="https://www.w3.org/TR/xml#idref">IDREF</link> pairs may be represented as page references like <quote>see page 32</quote>.</para> </listitem> @@ -105,7 +105,7 @@ <section xml:id="foStart"> <title>A simple <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> document</title> <titleabbrev>Simple <xref linkend="glo_FO"/></titleabbrev> @@ -157,7 +157,7 @@ <para>The result from of our <quote>Hello, World ...</quote> code is not very impressive. In order to develop more elaborated examples we have to understand the underlying layout model being defined in a <link - xlink:href="http://www.w3.org/TR/xsl/#fo_simple-page-master">fo:simple-page-master</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_simple-page-master">fo:simple-page-master</link> element. First of all <xref linkend="glo_FO"/> allows for subdividing a physical page into different regions:</para> @@ -172,19 +172,19 @@ </figure> <para>The most important area in this model is denoted by <link - xlink:href="http://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link>. + xlink:href="https://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link>. Other regions like <link - xlink:href="http://www.w3.org/TR/xsl/#fo_region-before">fo:region-before</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_region-before">fo:region-before</link> are typically used as containers for meta information such as chapter headings and page numbering. We take a closer look to the <link - xlink:href="http://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link> area and supply an example of parameterization:</para> <figure xml:id="foParamRegBody"> <title>A complete <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> parameterizing of a physical page and the <link - xlink:href="http://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link>.</title> + xlink:href="https://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link>.</title> <programlisting language="xml"><?xml version="1.0" encoding="utf-8"?> <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format" @@ -249,7 +249,7 @@ <callout arearefs="programlisting_fobodyreg_pagesequence"> <para>A <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> document may have multiple page sequences for example one per each chapter of a book. It <emphasis>must</emphasis> reference an <emphasis>existing</emphasis> layout definition via its @@ -268,9 +268,9 @@ <para>A <tag class="starttag">fo:block</tag> element may be compared to a paragraph element <tag class="starttag">p</tag> in HTML. The attribute <link - xlink:href="http://www.w3.org/TR/xsl/#space-after">space-after</link>="2mm" + xlink:href="https://www.w3.org/TR/xsl/#space-after">space-after</link>="2mm" adds a space of two mm after each <link - xlink:href="http://www.w3.org/TR/xsl/#fo_block">fo:block</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_block">fo:block</link> container.</para> </callout> </calloutlist> @@ -298,28 +298,28 @@ headers and footers frequently being used for page numbers. In a textbook each page might have the actual chapter's name in its header. This name should not change as long as the text below <link - xlink:href="http://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link> still belongs to the same chapter. In <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> this is achieved by:</para> <itemizedlist> <listitem> <para>Encapsulating each chapter's content in a <link - xlink:href="http://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link> of its own.</para> </listitem> <listitem> <para>Defining the desired header text below <link - xlink:href="http://www.w3.org/TR/xsl/#fo_static-content">fo:static-content</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_static-content">fo:static-content</link> in the area defined by <link - xlink:href="http://www.w3.org/TR/xsl/#fo_region-before">fo:region-before</link>.</para> + xlink:href="https://www.w3.org/TR/xsl/#fo_region-before">fo:region-before</link>.</para> </listitem> </itemizedlist> <para>The notion <link - xlink:href="http://www.w3.org/TR/xsl/#fo_static-content">fo:static-content</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_static-content">fo:static-content</link> refers to the fact that the content is constant (static) within the given page sequence. The new version reads:</para> @@ -476,13 +476,13 @@ <para>The free chapter from <xref linkend="bib_Harold04"/> book contains additional information on extended <link xlink:href="http://www.cafeconleche.org/books/bible2/chapters/ch18.html#d1e2250">layout - definitions</link>. The <orgname xlink:href="http://w3.org">W3C</orgname> + definitions</link>. The <orgname xlink:href="https://www.w3.org">W3C</orgname> as the holder of the FO standard defines the elements <link - xlink:href="http://www.w3.org/TR/xsl/#fo_layout-master-set">fo:layout-master-set</link>, + xlink:href="https://www.w3.org/TR/xsl/#fo_layout-master-set">fo:layout-master-set</link>, <link - xlink:href="http://www.w3.org/TR/xsl/#fo_simple-page-master">fo:simple-page-master</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_simple-page-master">fo:simple-page-master</link> and <link - xlink:href="http://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link></para> + xlink:href="https://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link></para> </section> <section xml:id="foContainer"> @@ -493,17 +493,17 @@ <para>The FO standard borrows a lot from the CSS standard. Most formatting objects may have <link - xlink:href="http://www.w3.org/TR/xsl/#section-N19349-Description-of-Property-Groups">CSS + xlink:href="https://www.w3.org/TR/xsl/#section-N19349-Description-of-Property-Groups">CSS like properties</link> with similar semantics, some properties have been added. We take a <link - xlink:href="http://www.w3.org/TR/xsl/#fo_block">fo:block</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_block">fo:block</link> container as an example:</para> <figure xml:id="blockInline"> <title>A <link - xlink:href="http://www.w3.org/TR/xsl/#fo_block">fo:block</link> with a + xlink:href="https://www.w3.org/TR/xsl/#fo_block">fo:block</link> with a <link - xlink:href="http://www.w3.org/TR/xsl/#fo_inline">fo:inline</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_inline">fo:inline</link> descendant.</title> <mediaobject> @@ -521,7 +521,7 @@ </figure> <para>The <link - xlink:href="http://www.w3.org/TR/xsl/#fo_inline">fo:inline</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_inline">fo:inline</link> descendant serves as a means to change the <quote>current</quote> property set. In HTML/CSS this may be achieved by using the <code>SPAN</code> tag:</para> @@ -557,11 +557,11 @@ expressed by the <code>UL</code>/<code>LI</code> tags in HTML. FO allows a much more detailed parametrization regarding indents and distances between labels and item content. Relevant elements are <link - xlink:href="http://www.w3.org/TR/xsl/#fo_list-block">fo:list-block</link>, + xlink:href="https://www.w3.org/TR/xsl/#fo_list-block">fo:list-block</link>, <link - xlink:href="http://www.w3.org/TR/xsl/#fo_list-item">fo:list-item</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_list-item">fo:list-item</link> and <link - xlink:href="http://www.w3.org/TR/xsl/#fo_list-item-body">fo:list-item-body</link>. + xlink:href="https://www.w3.org/TR/xsl/#fo_list-item-body">fo:list-item-body</link>. The drawback is a more complex setup for <quote>default</quote> lists:</para> @@ -613,7 +613,7 @@ <para>Sometimes adjustable horizontal space between two neighbouring objects has to be filled e.g. in a book's table of contents. The <link - xlink:href="http://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> serves + xlink:href="https://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> serves this purpose:</para> <figure xml:id="leaderToc"> @@ -636,16 +636,16 @@ page 42</fo:block> ...</programlisting> </figure> <para>The attributes' value <link - xlink:href="http://www.w3.org/TR/xsl/#text-align-last">text-align-last</link> + xlink:href="https://www.w3.org/TR/xsl/#text-align-last">text-align-last</link> = <code>'justify'</code> forces the <link - xlink:href="http://www.w3.org/TR/xsl/#fo_block">fo:block</link> to + xlink:href="https://www.w3.org/TR/xsl/#fo_block">fo:block</link> to extend to the available width of the current <link - xlink:href="http://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_region-body">fo:region-body</link> area. The <link - xlink:href="http://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> inserts the necessary amount of content of the specified type defined in in <link - xlink:href="http://www.w3.org/TR/xsl/#leader-pattern">leader-pattern</link> + xlink:href="https://www.w3.org/TR/xsl/#leader-pattern">leader-pattern</link> to fill up the gap between its neighbouring components. This principle can be extended to multiple objects:</para> @@ -665,11 +665,11 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc </figure> <para>A <link - xlink:href="http://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> may + xlink:href="https://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> may also be used to draw horizontal lines to separate objects. In this case there are no neighbouring components within the <quote>current</quote> line in which the <link - xlink:href="http://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> appears. This is frequently used to draw a border between <code>xsl-region-body</code> and <code>xsl-region-before</code> and/or <code>xsl-region-after</code>:</para> @@ -699,12 +699,12 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc </figure> <para>Note the empty leader <code><</code> <link - xlink:href="http://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_leader">fo:leader</link> <code>/></code> between the <quote> <code>FO</code> </quote> and the <quote>page 5</quote> text node inserting horizontal whitespace to get the page number centered to the header's right edge. This is in accordance with the <link - xlink:href="http://www.w3.org/TR/xsl/#leader-pattern">leader-pattern</link> + xlink:href="https://www.w3.org/TR/xsl/#leader-pattern">leader-pattern</link> attributes default value <code>space</code>.</para> </section> @@ -712,15 +712,15 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc <title>Page numbers</title> <para>We already saw an example of page numbering via <link - xlink:href="http://www.w3.org/TR/xsl/#fo_page-number">fo:page-number</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_page-number">fo:page-number</link> in <xref linkend="paramHeadFoot"/>. Sometimes a different style for page numbering is desired. The default page numbering style may be changed by means of the <link - xlink:href="http://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link> element's attribute <link - xlink:href="http://www.w3.org/TR/xsl/#format">format</link>. For a + xlink:href="https://www.w3.org/TR/xsl/#format">format</link>. For a closer explanation the <link - xlink:href="http://www.w3.org/TR/2007/REC-xslt20-20070123/#convert">W3X + xlink:href="https://www.w3.org/TR/2007/REC-xslt20-20070123/#convert">W3X XSLT standards documentation</link> may be consulted:</para> <figure xml:id="pageNumberingRoman"> @@ -835,7 +835,7 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc <listitem> <para>This way of implementing references utilizes features of (online) viewers for printable documents. For example PDF viewers - like <productname xlink:href="http://www.adobe.com">Adobe's + like <productname xlink:href="https://www.adobe.com">Adobe's Acrobat reader</productname> or the evince application are able to follow hypertext links in a fashion known from HTML browsers. This browser feature is based on hypertext capabilities defined in the @@ -849,24 +849,24 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc physical paper.</para> <para>We now show the implementation of <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> based page references. As already being discussed for <link - xlink:href="http://www.w3.org/TR/xml#id">ID</link> / <link - xlink:href="http://www.w3.org/TR/xml#idref">IDREF</link> pairs we need a + xlink:href="https://www.w3.org/TR/xml#id">ID</link> / <link + xlink:href="https://www.w3.org/TR/xml#idref">IDREF</link> pairs we need a link destination (anchor) and a link source. The <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> standard uses the same anchor implementation as in XML for <link - xlink:href="http://www.w3.org/TR/xml#id">ID</link> typed attributes: + xlink:href="https://www.w3.org/TR/xml#id">ID</link> typed attributes: <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> objects <emphasis>may</emphasis> have an attribute <link - xlink:href="http://www.w3.org/TR/xsl/#id">id</link> with a document wide + xlink:href="https://www.w3.org/TR/xsl/#id">id</link> with a document wide unique value. The <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> element <link - xlink:href="http://www.w3.org/TR/xsl/#fo_page-number-citation">fo:page-number-citation</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_page-number-citation">fo:page-number-citation</link> is used to actually create a page reference via its attribute <link - xlink:href="http://www.w3.org/TR/xsl/#ref-id">ref-id</link>:</para> + xlink:href="https://www.w3.org/TR/xsl/#ref-id">ref-id</link>:</para> <figure xml:id="refJavaXml"> <title>Two blocks mutual page referencing each other.</title> @@ -890,19 +890,19 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc </figure> <para>NB: Be careful defining <link - xlink:href="http://www.w3.org/TR/xsl/#id">id</link> attributes for + xlink:href="https://www.w3.org/TR/xsl/#id">id</link> attributes for objects being descendants of <link - xlink:href="http://www.w3.org/TR/xsl/#fo_static-content">fo:static-content</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_static-content">fo:static-content</link> nodes. Such objects typically appear on multiple pages and are therefore no unique anchors. A reference carrying such an id value thus actually refers to 1 <= n values on n different pages. Typically a user agent will choose the first object of this set when clicking the link. So in effect the parent <link - xlink:href="http://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_page-sequence">fo:page-sequence</link> is chosen as the effective link target.</para> <para>The element <link - xlink:href="http://www.w3.org/TR/xsl/#fo_basic-link">fo:basic-link</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_basic-link">fo:basic-link</link> creates PDF hypertext links. We extend the previous example:</para> <figure xml:id="refJavaXmlHyper"> @@ -942,12 +942,12 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc </mediaobject> <para>PDF bookmarks are <link - xlink:href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#d0e14206">part + xlink:href="https://www.w3.org/TR/2006/REC-xsl11-20061205/#d0e14206">part of the XSL-FO 1.1</link> Standard. Some <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> processors still continue to use proprietary solutions for bookmark creation with respect to the older <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> 1.0 standard. For details of bookmark extensions by <orgname>RenderX</orgname>'s processor see <link xlink:href="http://www.renderx.com/tutorial.html#PDF_Bookmarks">xep's @@ -957,15 +957,15 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc <section xml:id="xml2fo"> <title>Constructing <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> from XML documents</title> <titleabbrev><abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> from XML</titleabbrev> <para>So far we have learnt some basic <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> elements. As with HTML we typically generate FO code from other sources rather than crafting it by hand. The general picture is:</para> @@ -986,16 +986,16 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc </figure> <para>We discussed the <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> standard as an input format for printable output production by a renderer. In this way a <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> document is similar to HTML being a format to be rendered by a web browser for visual (screen oriented) output production. The transformation from a XML source (e.g. a memo document) to <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> is still missing. As for HTML we may use <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> as a transformation + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> as a transformation means. We generate the sender's surname from a memo document instance:</para> @@ -1064,20 +1064,20 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc <orderedlist> <listitem> <para>The <link - xlink:href="http://www.w3.org/TR/2007/REC-xslt20-20070123/#element-stylesheet">xsl_stylesheet</link> + xlink:href="https://www.w3.org/TR/2007/REC-xslt20-20070123/#element-stylesheet">xsl_stylesheet</link> element contains a namespace definition for the target FO document's namespace, namely:</para> <programlisting language="none">xmlns:xsl="http://www.w3.org/1999/XSL/Transform"</programlisting> <para>This is required to use elements like <link - xlink:href="http://www.w3.org/TR/xsl/#fo_block">fo:block</link> + xlink:href="https://www.w3.org/TR/xsl/#fo_block">fo:block</link> belonging to the FO namespace.</para> </listitem> <listitem> <para>The option value <code>indent="yes"</code> in <link - xlink:href="http://www.w3.org/TR/2007/REC-xslt20-20070123/#element-output">xsl_output</link> + xlink:href="https://www.w3.org/TR/2007/REC-xslt20-20070123/#element-output">xsl_output</link> is usually set to "no" in a production environment to avoid whitespace related problems.</para> </listitem> @@ -1112,7 +1112,7 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc </mediaobject> <para>When debugging of the intermediate <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> file is not required both steps may be combined into a single call:</para> @@ -1137,7 +1137,7 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc <qandaentry> <question> <para>Write a <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> script to + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> script to generate a starting version <filename xlink:href="Sda1/Ref/src/Dom/climbenriched.start.pdf">climbenriched.start.pdf</filename>.</para> </question> @@ -1252,14 +1252,14 @@ leader-pattern="dots"/>C<fo:leader leader-pattern="dots"/>D</fo:bloc On each page's footer a text <quote>page xx of yy</quote> shall be displayed. This requires the definition of an anchor <code>id</code> on the <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> document's last page.</para> </listitem> <listitem> <para>Add PDF bookmarks by using <orgname>XEP</orgname>'s <abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section">FO</abbrev> extensions. This requires the namespace declaration <code>xmlns:rx="http://www.renderx.com/XSL/Extensions"</code> in the XSLT script's header.</para> diff --git a/Doc/Sda1/jdbc.xml b/Doc/Sda1/jdbc.xml index 189fbdcfb..57fc8504e 100644 --- a/Doc/Sda1/jdbc.xml +++ b/Doc/Sda1/jdbc.xml @@ -74,7 +74,7 @@ processes mentioned here may as well be started in disjoint address spaces. In fact we might even run two entirely different applications implemented in different programming languages like <abbrev - xlink:href="http://www.php.net">PHP</abbrev>.</para> + xlink:href="https://secure.php.net">PHP</abbrev>.</para> <para>It is important to mention that the two arrows <quote>save</quote> and <quote>load</quote> thus typically denote a communication across @@ -123,11 +123,11 @@ <para>We may add an additional layer. Web applications are typically being build on top of an application server (<productname - xlink:href="http://www.ibm.com/software/de/websphere/">WebSphere</productname>, + xlink:href="https://www.ibm.com/software/de/websphere/">WebSphere</productname>, <productname - xlink:href="http://glassfish.java.net">Glassfish</productname>, + xlink:href="https://glassfish.java.net">Glassfish</productname>, <productname - xlink:href="http://www.jboss.org/jbossas">Jboss</productname>,...) + xlink:href="https://www.jboss.org/jbossas">Jboss</productname>,...) providing additional services:</para> <figure xml:id="jdbcFourTier"> @@ -154,7 +154,7 @@ xlink:href="www.ibm.com/software/data/db2">DB2</productname>, <productname xlink:href="http://www-01.ibm.com/software/data/informix">Informix</productname>, - <productname xlink:href="http://www.mysql.com">Mysql</productname> + <productname xlink:href="https://www.mysql.com">Mysql</productname> etc. This information is needed because of vendor dependent <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> @@ -163,7 +163,7 @@ <listitem> <para>The server's <link - xlink:href="http://en.wikipedia.org/wiki/Domain_Name_System">DNS</link> + xlink:href="https://en.wikipedia.org/wiki/Domain_Name_System">DNS</link> name or IP number</para> </listitem> @@ -187,7 +187,7 @@ <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> <link - xlink:href="http://en.wikipedia.org/wiki/Uniform_Resource_Locator">URL</link>. + xlink:href="https://en.wikipedia.org/wiki/Uniform_Resource_Locator">URL</link>. We consider a typical example corresponding to the previous parameter list:</para> @@ -207,12 +207,12 @@ xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> URL example closely resembles other types of URL strings as being defined in <uri - xlink:href="http://www.ietf.org/rfc/rfc2396.txt">http://www.ietf.org/rfc/rfc2396.txt</uri>. + xlink:href="https://www.ietf.org/rfc/rfc2396.txt">http://www.ietf.org/rfc/rfc2396.txt</uri>. Look for <code>opaque_part</code> to understand the second <quote>:</quote> in the protocol definition part of a <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> URL. Common example for <abbrev - xlink:href="http://www.ietf.org/rfc/rfc1738.txt">URL</abbrev>s + xlink:href="https://www.ietf.org/rfc/rfc1738.txt">URL</abbrev>s are:</para> <itemizedlist> @@ -231,7 +231,7 @@ <para>We notice the explicit mentioning of a port number 8080 in the second example; The default <abbrev - xlink:href="http://www.w3.org/Protocols">http</abbrev> protocol port + xlink:href="https://www.w3.org/Protocols">http</abbrev> protocol port number is 80. So if a web server accepts connections at port 80 we do not have to specify this value. A web browser will automatically use this default port.</para> @@ -244,7 +244,7 @@ part.</para> <para>In contrast to <abbrev - xlink:href="http://www.w3.org/Protocols">http</abbrev> no standard ports + xlink:href="https://www.w3.org/Protocols">http</abbrev> no standard ports are <quote>officially</quote> assigned for <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> protocol variants. Due to vendor specific implementations this does not @@ -475,7 +475,7 @@ <note> <para>It is worth mentioning that the <productname - xlink:href="http://www.mysql.com">Mysql</productname> and other <xref + xlink:href="https://www.mysql.com">Mysql</productname> and other <xref linkend="glo_JDBC"/> driver implementations do not have to be available at compile time. <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> @@ -495,39 +495,39 @@ <itemizedlist> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#createStatement()">createStatement()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#createStatement()">createStatement()</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#setAutoCommit(boolean)">setAutoCommit()</link>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#setAutoCommit(boolean)">setAutoCommit()</link>, <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#getAutoCommit()">getAutoCommit()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#getAutoCommit()">getAutoCommit()</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#getWarnings()">getWarnings()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#getWarnings()">getWarnings()</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#isClosed()">isClosed()</link>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#isClosed()">isClosed()</link>, <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#isValid(int)">isValid(int + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#isValid(int)">isValid(int timeout)</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#rollback()">rollback()</link>, + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#rollback()">rollback()</link>, <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#commit()">commit()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#commit()">commit()</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#close()">close()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#close()">close()</link></para> </listitem> </itemizedlist> </glossdef> @@ -540,25 +540,25 @@ <itemizedlist> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#executeUpdate(java.lang.String)">executeUpdate(String + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Statement.html#executeUpdate(java.lang.String)">executeUpdate(String sql)</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#getConnection()">getConnection()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Statement.html#getConnection()">getConnection()</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#getResultSet()">getResultSet()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Statement.html#getResultSet()">getResultSet()</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#close()">close()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Statement.html#close()">close()</link> and <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#isClosed()">isClosed()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Statement.html#isClosed()">isClosed()</link></para> </listitem> </itemizedlist> </glossdef> @@ -574,11 +574,11 @@ <qandaentry> <question> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#setAutoCommit(boolean)">How + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#setAutoCommit(boolean)">How does the method setAutoCommit()</link> relate to <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#commit()">commit()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#commit()">commit()</link> and <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#rollback()">rollback()</link>?</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#rollback()">rollback()</link>?</para> </question> <answer> @@ -604,12 +604,12 @@ <orderedlist numeration="loweralpha"> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#commit()">commit()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#commit()">commit()</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#rollback()">rollback()</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#rollback()">rollback()</link></para> </listitem> <listitem> @@ -621,9 +621,9 @@ <note> <para>Both <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#commit()">commit()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#commit()">commit()</link> and <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#rollback()">rollback()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#rollback()">rollback()</link> are being initiated from the client side whereas aborting a transaction happens on behalf of the database server.</para> @@ -644,7 +644,7 @@ <qandaentry> <question> <para>Why is it important to call the <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#close()">close()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Statement.html#close()">close()</link> method for <classname xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html">Connection</classname> and / or <classname @@ -843,7 +843,7 @@ public someClass { driver registers itself at the <classname>java.sql.DriverManager</classname> singleton instance. For this purpose the standard defined the method <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/DriverManager.html#registerDriver(java.sql.Driver)">registerDriver(Driver)</link>. + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/DriverManager.html#registerDriver(java.sql.Driver)">registerDriver(Driver)</link>. On success the <classname>java.sql.DriverManager</classname> adds the driver to an internal dictionary:</para> @@ -878,7 +878,7 @@ public someClass { </informaltable> <para>So whenever the method <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/DriverManager.html#getConnection(java.lang.String,%20java.lang.String,%20java.lang.String)">getConnection()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/DriverManager.html#getConnection(java.lang.String,%20java.lang.String,%20java.lang.String)">getConnection()</link> is being called the <classname>java.sql.DriverManager</classname> will scan the <trademark @@ -939,7 +939,7 @@ public someClass { <qandaset defaultlabel="qanda" xml:id="quandaentry_WritProps"> <title>Moving <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> - <abbrev xlink:href="http://www.ietf.org/rfc/rfc1738.txt">URL</abbrev> + <abbrev xlink:href="https://www.ietf.org/rfc/rfc1738.txt">URL</abbrev> and credentials to a property file</title> <qandadiv> @@ -1106,9 +1106,9 @@ public class SimpleInsert { an <quote>all or nothing</quote> fashion by grouping all <code>INSERT</code>s into a single transaction. You may want to read about <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#setAutoCommit-boolean-">setAutoCommit(boolean + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#setAutoCommit-boolean-">setAutoCommit(boolean autoCommit)</link> and <link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#commit--">commit()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#commit--">commit()</link> for this purpose.</para> </question> @@ -1640,7 +1640,7 @@ public class ViewMockup implements PersistView { the GUI part shall have no reference to <xref linkend="glo_SQL"/> / <xref linkend="glo_JDBC"/> and your database part shall have no <productname - xlink:href="http://vaadin.com">Vaadin</productname> GUI + xlink:href="https://vaadin.com">Vaadin</productname> GUI related references.</para> </listitem> </orderedlist> @@ -1775,9 +1775,9 @@ public class ViewMockup implements PersistView { <para>We demonstrate a possible attack by analyzing the network traffic between our application shown in <xref linkend="figJdbcSimpleWrite"/> and the <productname - xlink:href="http://www.mysql.com">Mysql</productname> database server. + xlink:href="https://www.mysql.com">Mysql</productname> database server. Prior to starting the application we set up <productname - xlink:href="http://www.wireshark.org">Wireshark</productname> for + xlink:href="https://www.wireshark.org">Wireshark</productname> for filtered capturing:</para> <itemizedlist> @@ -1789,7 +1789,7 @@ public class ViewMockup implements PersistView { <listitem> <para>Filtering packets if not of type <acronym - xlink:href="http://en.wikipedia.org/wiki/Transmission_Control_Protocol">TCP</acronym> + xlink:href="https://en.wikipedia.org/wiki/Transmission_Control_Protocol">TCP</acronym> and having port number 3306</para> </listitem> </itemizedlist> @@ -1826,16 +1826,16 @@ public class ViewMockup implements PersistView { code in <xref linkend="figJdbcSimpleWrite"/> contains the password <quote><varname>XYZ</varname></quote> in clear text. But even using the search function of <productname - xlink:href="http://www.wireshark.org">Wireshark</productname> does not + xlink:href="https://www.wireshark.org">Wireshark</productname> does not show any such string within the above capture. The <productname - xlink:href="http://www.mysql.com">Mysql</productname> documentation + xlink:href="https://www.mysql.com">Mysql</productname> documentation however <link - xlink:href="http://dev.mysql.com/doc/refman/5.0/en/security-against-attack.html">reveals</link> + xlink:href="https://dev.mysql.com/doc/refman/5.0/en/security-against-attack.html">reveals</link> that everything but the password is transmitted in clear text. So all we might identify is a hash of <code>XYZ</code>.</para> <para>So regarding our (current) <productname - xlink:href="http://www.mysql.com">Mysql</productname> implementation + xlink:href="https://www.mysql.com">Mysql</productname> implementation the impact of this attack type is somewhat limited but still severe: All data being transmitted between client and server may be disclosed. This typically comprises sensible data as well. Possible @@ -1845,14 +1845,14 @@ public class ViewMockup implements PersistView { <listitem> <para>Create an encrypted tunnel between client and server like e.g. <link - xlink:href="http://www.debianadmin.com/howto-use-ssh-local-and-remote-port-forwarding.html">ssh + xlink:href="https://www.debianadmin.com/howto-use-ssh-local-and-remote-port-forwarding.html">ssh port forwarding</link> or <link - xlink:href="http://de.wikipedia.org/wiki/Virtual_Private_Network">VPN</link>.</para> + xlink:href="https://en.wikipedia.org/wiki/Virtual_private_network">VPN</link>.</para> </listitem> <listitem> <para>Many database vendors <link - xlink:href="http://dev.mysql.com/doc/refman/5.1/de/connector-j-reference-using-ssl.html">supply + xlink:href="https://dev.mysql.com/doc/refman/5.1/de/connector-j-reference-using-ssl.html">supply SSL</link> or similar <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> protocol encryption extensions. This requires additional @@ -1929,7 +1929,7 @@ public class ViewMockup implements PersistView { </mediaobject> <para>Lessons learned? Current achievements <link - xlink:href="http://cwe.mitre.org/top25/#Listing">continue</link> to be + xlink:href="https://cwe.mitre.org/top25/#Listing">continue</link> to be <link xlink:href="https://www.cvedetails.com/vulnerability-search.php?f=1&vendor=&product=&cveid=&cweid=&cvssscoremin=&cvssscoremax=&psy=&psm=&pey=&pem=&usy=&usm=&uey=&uem=&opsqli=1">questionable</link>.</para> @@ -1947,7 +1947,7 @@ public class ViewMockup implements PersistView { <orderedlist> <listitem> <para>The <productname - xlink:href="http://www.mysql.com">Mysql</productname> + xlink:href="https://www.mysql.com">Mysql</productname> <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> driver implementation already provides precautions to @@ -1960,7 +1960,7 @@ public class ViewMockup implements PersistView { <para>In order to execute these so called multi user queries we explicitly have to enable a <productname - xlink:href="http://www.mysql.com">Mysql</productname> + xlink:href="https://www.mysql.com">Mysql</productname> property. This may be achieved by extending our <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> URL:</para> @@ -1969,9 +1969,9 @@ public class ViewMockup implements PersistView { role="bold">allowMultiQueries=true</emphasis></programlisting> <para>The <productname - xlink:href="http://www.mysql.com">Mysql</productname> + xlink:href="https://www.mysql.com">Mysql</productname> manual <link - xlink:href="http://dev.mysql.com/doc/refman/5.1/en/connector-j-reference-configuration-properties.html">contains + xlink:href="https://dev.mysql.com/doc/refman/5.1/en/connector-j-reference-configuration-properties.html">contains </link>a remark regarding this parameter:</para> <remark>Notice that this has the potential for SQL @@ -2330,7 +2330,7 @@ public class RegexpPrimer { <para>A concise definition of an email's syntax is being given in <link - xlink:href="http://tools.ietf.org/html/rfc5322#section-3.4.1">RFC5322</link>. + xlink:href="https://tools.ietf.org/html/rfc5322#section-3.4.1">RFC5322</link>. Its implementation is beyond scope of the current lecture. Moreover it is questionable whether E-mail clients and mail transfer agents implement strict @@ -2829,10 +2829,10 @@ public class SimpleRead { <callout arearefs="listingJdbcRead-2-co" xml:id="listingJdbcRead-2"> <para>Calling <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#next()">next()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#next()">next()</link> prior to actually accessing data on the client side is mandatory! The <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#next()">next()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#next()">next()</link> method places the internal iterator to the first element of our dataset if not empty. Follow the link address and **read** the documentation.</para> @@ -2843,7 +2843,7 @@ public class SimpleRead { <para>The access methods have to be chosen according to matching types. An overview of database/<xref linkend="glo_Java"/> type mappings is being given in <uri - xlink:href="http://docs.oracle.com/javase/1.3/docs/guide/jdbc/getstart/mapping.html">http://docs.oracle.com/javase/1.3/docs/guide/jdbc/getstart/mapping.html</uri>.</para> + xlink:href="https://docs.oracle.com/javase/1.3/docs/guide/jdbc/getstart/mapping.html">https://docs.oracle.com/javase/1.3/docs/guide/jdbc/getstart/mapping.html</uri>.</para> </callout> </calloutlist> @@ -2859,19 +2859,19 @@ public class SimpleRead { <question> <para>Apart from type mappings the <xref linkend="glo_JDBC"/> access methods like <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getString(int)">getString()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getString(int)">getString()</link> may also be used for type conversion. Modify <xref linkend="listingJdbcRead"/> by:</para> <itemizedlist> <listitem> <para>Read the database attribute <code>id</code> by <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getString(java.lang.String)">getString(String)</link>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getString(java.lang.String)">getString(String)</link>.</para> </listitem> <listitem> <para>Read the database attribute nickname by <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getInt(java.lang.String)">getInt(String)</link>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getInt(java.lang.String)">getInt(String)</link>.</para> </listitem> </itemizedlist> @@ -2898,7 +2898,7 @@ while (data.next()) { <callout arearefs="jdbcReadWrongType-1-co" xml:id="jdbcReadWrongType-1"> <para>Calling <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getString(int)">getString()</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getString(int)">getString()</link> for a database attribute of type INTEGER does not cause any trouble: The value gets silently converted to a string value.</para> @@ -2907,7 +2907,7 @@ while (data.next()) { <callout arearefs="jdbcReadWrongType-2-co" xml:id="jdbcReadWrongType-2"> <para>Calling <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getInt(java.lang.String)">getInt(String)</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getInt(java.lang.String)">getInt(String)</link> for the database field of type CHAR yields an (expected) Exception:</para> </callout> @@ -2931,7 +2931,7 @@ INSERT INTO Friends VALUES (1, <emphasis role="bold">'31'</emphasis>, '1991-10-1 <para>Conclusion: The <xref linkend="glo_JDBC"/> driver performs a conversion from a string type to an integer similar like the <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#parseInt(java.lang.String)">parseInt(String)</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html#parseInt(java.lang.String)">parseInt(String)</link> method.</para> <para>The next series of exercises aims on a more powerful @@ -2977,7 +2977,7 @@ INSERT INTO Friends VALUES (1, <emphasis role="bold">'31'</emphasis>, '1991-10-1 values.</para> <para>Hint: Read the documentation of <link - xlink:href="http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#wasNull()">wasNull()</link>.</para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#wasNull()">wasNull()</link>.</para> </question> <answer> @@ -3089,7 +3089,7 @@ INSERT INTO Friends VALUES (1, <emphasis role="bold">'31'</emphasis>, '1991-10-1 on the bottom of the page.</para> <para>With respect to an implementation <uri - xlink:href="http://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java#11038230">http://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java</uri> + xlink:href="https://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java#11038230">http://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java</uri> provides a simple example for:</para> <itemizedlist> @@ -3105,7 +3105,7 @@ INSERT INTO Friends VALUES (1, <emphasis role="bold">'31'</emphasis>, '1991-10-1 </itemizedlist> <para>You may as well use <uri - xlink:href="http://crackstation.net/hashing-security.htm#javasourcecode">http://crackstation.net/hashing-security.htm#javasourcecode</uri> + xlink:href="https://crackstation.net/hashing-security.htm#javasourcecode">http://crackstation.net/hashing-security.htm#javasourcecode</uri> as a starting point. This example works standalone without needing an external library. Note: This example produces different (incompatible) hash values.</para> @@ -3131,7 +3131,7 @@ INSERT INTO Friends VALUES (1, <emphasis role="bold">'31'</emphasis>, '1991-10-1 <para>Starting from <quote xlink:href="https://crackstation.net/hashing-security.htm">Salted Password Hashing - Doing it Right</quote> and <uri - xlink:href="http://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java#11038230">http://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java</uri> + xlink:href="https://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java#11038230">http://stackoverflow.com/questions/2860943/suggestions-for-library-to-hash-passwords-in-java</uri> we create a slightly modified class <classname>HashProvider</classname>:</para> @@ -3647,7 +3647,7 @@ INSERT INTO Product VALUES('w-124', 110.40); <para>Then extend <xref linkend="xml2xml"/> by introducing a new method <methodname>addPrices(final Document catalog)</methodname> which adds prices to the <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> tree + xlink:href="https://www.w3.org/DOM">DOM</acronym> tree accordingly.</para> </question> @@ -3656,7 +3656,7 @@ INSERT INTO Product VALUES('w-124', 110.40); linkend="xml2xml"/> is represented by a method <methodname>de.hdm_stuttgart.mi.sda1.rdbmsxml2html.XmlRdbms2Html.addPrices()</methodname>. This method modifies the <acronym - xlink:href="http://www.w3.org/DOM">DOM</acronym> input tree + xlink:href="https://www.w3.org/DOM">DOM</acronym> input tree prior to applying the XSL by inserting data received from the RDBMS:</para> diff --git a/Doc/Sda1/jpaintro.xml b/Doc/Sda1/jpaintro.xml index 97526fed5..042ea7c4a 100644 --- a/Doc/Sda1/jpaintro.xml +++ b/Doc/Sda1/jpaintro.xml @@ -38,7 +38,7 @@ <parameter>hibernate.hbm2ddl.auto</parameter> causes table re-creation on every new invocation and may be adjusted according to <quote - xlink:href="http://docs.jboss.org/hibernate/orm/5.0/manual/en-US/html/ch03.html#configuration-misc-properties">Miscellaneous + xlink:href="https://docs.jboss.org/hibernate/orm/5.0/manual/en-US/html/ch03.html#configuration-misc-properties">Miscellaneous Properties</quote>.</para> </glossdef> </glossentry> @@ -141,7 +141,7 @@ <listitem> <para>Read the <link - xlink:href="http://www.objectdb.com/java/jpa/query/api">TypedQuery + xlink:href="https://www.objectdb.com/java/jpa/query/api">TypedQuery section</link> and add an appropriate <code>... where name like 'S%'</code> clause.</para> </listitem> diff --git a/Doc/Sda1/prerequisites.xml b/Doc/Sda1/prerequisites.xml index a3b81bbf7..8cfa95eb5 100644 --- a/Doc/Sda1/prerequisites.xml +++ b/Doc/Sda1/prerequisites.xml @@ -20,13 +20,13 @@ <itemizedlist> <listitem> <para><xref linkend="bib_fawcett2012"/> possibly <link - xlink:href="http://proquest.safaribooksonline.com/book/web-development/xml/9781118239483">accessible + xlink:href="https://proquest.safaribooksonline.com/book/web-development/xml/9781118239483">accessible online</link>.</para> </listitem> <listitem> <para><xref linkend="bib_Walmsley02"/> possibly <link - xlink:href="http://proquest.safaribooksonline.com/book/web-development/xml/9780132886741">accessible + xlink:href="https://proquest.safaribooksonline.com/book/web-development/xml/9780132886741">accessible online</link>.</para> </listitem> </itemizedlist> @@ -111,9 +111,9 @@ <caution> <para>The license key's <abbrev - xlink:href="http://en.wikipedia.org/wiki/File_Transfer_Protocol">ftp</abbrev> + xlink:href="https://en.wikipedia.org/wiki/File_Transfer_Protocol">ftp</abbrev> URL is only accessible from within the <orgname - xlink:href="http://www.hdm-stuttgart.de">HdM</orgname> network. + xlink:href="https://www.hdm-stuttgart.de">HdM</orgname> network. External access requires <link xlink:href="https://wiki.mi.hdm-stuttgart.de/wiki/VPN">Vpn activation</link>.</para> @@ -129,7 +129,7 @@ xlink:href="https://version.mi.hdm-stuttgart.de/git/GoikLectures">https://version.mi.hdm-stuttgart.de/git/GoikLectures</link>.</para> <para>You may simply execute <quote><command - xlink:href="http://git-scm.com/">git</command> + xlink:href="https://git-scm.com">git</command> <option>clone</option> <option>https://version.mi.hdm-stuttgart.de/git/GoikLectures</option> <option>.</option></quote> to check out the master tree.</para> @@ -205,7 +205,7 @@ <para>The Eclipse IDE will be used as the primary coding tool especially for <xref linkend="glo_Java"/> and XML. Users may use different tools like e.g. <productname - xlink:href="http://netbeans.org">Netbeans</productname> or <productname + xlink:href="https://netbeans.org">Netbeans</productname> or <productname xlink:href="http://www.altova.com/de/xmlspy.html">XML-Spy</productname>. There are however some caveats:</para> @@ -239,7 +239,7 @@ <para>Due to Oracle's (end-user unfriendly) licensing policy you may have to install this component manually. For <productname xlink:href="http://www.ubuntu.com">Ubuntu</productname> and <productname - xlink:href="http://www.debian.org">Debian</productname> systems a + xlink:href="https://www.debian.org">Debian</productname> systems a standard (package manager compatible) procedure is being described at <uri xlink:href="http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html">http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html</uri>. @@ -266,7 +266,7 @@ Java(TM) SE Runtime Environment (build 1.8.0_60-b27) Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)</programlisting> <para>The Eclipse IDE comes <link - xlink:href="http://www.eclipse.org/downloads">with various + xlink:href="https://www.eclipse.org/downloads">with various flavours</link> depending on which plugins are already being shipped. For our purposes <quote><productname>Eclipse IDE for Java EE Developers</productname></quote> is appropriate. Remember to download @@ -274,7 +274,7 @@ Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)</programlisting> xlink:href="http://www.oracle.com/technetwork/java/javase/jdk-7-readme-429198.html">JDK</productname>.</para> <para>Follow <uri - xlink:href="http://askubuntu.com/questions/26632/how-to-install-eclipse#answer-145018">http://askubuntu.com/questions/26632/how-to-install-eclipse#answer-145018</uri> + xlink:href="https://askubuntu.com/questions/26632/how-to-install-eclipse#answer-145018">http://askubuntu.com/questions/26632/how-to-install-eclipse#answer-145018</uri> to install eclipse on your system.</para> </section> @@ -302,11 +302,11 @@ Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)</programlisting> <section xml:id="mysql"> <title><productname - xlink:href="http://www.mysql.com">Mysql</productname> Database + xlink:href="https://www.mysql.com">Mysql</productname> Database components</title> <para>We start by installing the <productname - xlink:href="http://www.mysql.com">Mysql</productname> server:</para> + xlink:href="https://www.mysql.com">Mysql</productname> server:</para> <programlisting language="none">root@goiki:~# aptitude install mysql-server The following NEW packages will be installed: @@ -318,7 +318,7 @@ Do you want to continue? [Y/n/?]</programlisting> <para>Hit <keycap>Y - return</keycap> to start. During the installation you will be asked for the <productname - xlink:href="http://www.mysql.com">Mysql</productname> servers + xlink:href="https://www.mysql.com">Mysql</productname> servers <quote>root</quote> (Administrator) password:</para> <programlisting language="none">Package configuration @@ -383,10 +383,10 @@ mysql> FLUSH PRIVILEGES;</programlisting> <para>The next step is optional. The <productname xlink:href="http://www.ubuntu.com">Ubuntu</productname> <productname - xlink:href="http://www.mysql.com">Mysql</productname> server default + xlink:href="https://www.mysql.com">Mysql</productname> server default configuration allows connections only via <varname>loopback</varname> interface i.e. <varname>localhost</varname>. If you want your - <productname xlink:href="http://www.mysql.com">Mysql</productname> + <productname xlink:href="https://www.mysql.com">Mysql</productname> server to listen to the external network interface comment out the bind-address parameter in <filename>/etc/mysql/my.cnf</filename>:</para> @@ -397,7 +397,7 @@ mysql> FLUSH PRIVILEGES;</programlisting> <para>Since we are dealing with <xref linkend="glo_Java"/> a <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> driver is needed to connect Applications to our <productname - xlink:href="http://www.mysql.com">Mysql</productname> server:</para> + xlink:href="https://www.mysql.com">Mysql</productname> server:</para> <programlisting language="none">root@goiki:~# aptitude install libmysql-java</programlisting> @@ -437,7 +437,7 @@ lrwxrwxrwx 1 ... 2011 <emphasis role="bold">mysql.jar -> mysql-connector-java <listitem> <para>A unique <link - xlink:href="http://en.wikipedia.org/wiki/List_of_airline_codes">ICAO + xlink:href="https://en.wikipedia.org/wiki/List_of_airline_codes">ICAO abbreviation</link>.</para> </listitem> </itemizedlist> @@ -548,7 +548,7 @@ CREATE TABLE Flight ( <section xml:id="toolingConfigJdbc"> <title>Configuring and using the <link - xlink:href="http://www.eclipse.org/datatools">Eclipse database + xlink:href="https://www.eclipse.org/datatools">Eclipse database development</link> plugin</title> <para>For some basic SQL communications the Eclipse environment offers a @@ -562,7 +562,7 @@ CREATE TABLE Flight ( <title>Adding a <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> Driver for <productname - xlink:href="http://www.mysql.com">Mysql</productname> to the database + xlink:href="https://www.mysql.com">Mysql</productname> to the database plugin.</title> <mediaobject> @@ -587,7 +587,7 @@ CREATE TABLE Flight ( <title>Configuring a <trademark xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> connection to a (local) <productname - xlink:href="http://www.mysql.com">Mysql</productname> database + xlink:href="https://www.mysql.com">Mysql</productname> database server.</title> <mediaobject> diff --git a/Doc/Sda1/sax.xml b/Doc/Sda1/sax.xml index 36941896c..8f7b26453 100644 --- a/Doc/Sda1/sax.xml +++ b/Doc/Sda1/sax.xml @@ -14,7 +14,7 @@ <itemizedlist> <listitem> <para><link - xlink:href="http://www.ibm.com/developerworks/xml/tutorials/x-usax/x-usax.html">Understanding + xlink:href="https://www.ibm.com/developerworks/xml/tutorials/x-usax/x-usax.html">Understanding SAX</link></para> </listitem> @@ -140,7 +140,7 @@ INSERT INTO Product VALUES('<emphasis role="bold">9921</emphasis>', 121.50)</pro xlink:href="https://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</trademark> for database access. But how do we actually read and parse a XML file? Sticking to the <xref linkend="glo_Java"/> standard we might use a <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/FileInputStream.html">FileInputStream</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html">FileInputStream</link> instance to read from <code>catalog.xml</code> and write a XML parser by ourself. Fortunately <orgname>SUN</orgname>'s <trademark xlink:href="http://www.oracle.com/technetwork/java/javase">JDK</trademark> @@ -152,8 +152,8 @@ INSERT INTO Product VALUES('<emphasis role="bold">9921</emphasis>', 121.50)</pro also includes a corresponding parser implementation. In addition there are third party <acronym xlink:href="http://www.saxproject.org">SAX</acronym> parser implementations available like <productname - xlink:href="http://xerces.apache.org">Xerces</productname> from the - <orgname xlink:href="http://www.apache.org">Apache + xlink:href="https://xerces.apache.org">Xerces</productname> from the + <orgname xlink:href="https://www.apache.org">Apache Foundation</orgname>.</para> <para>The <acronym xlink:href="http://www.saxproject.org">SAX</acronym> @@ -521,8 +521,8 @@ Closing Document content is due to whitespace being located between elements. For example a newline appears between the the <tag class="starttag">catalog</tag> and the first <tag class="starttag">item</tag> element. The parser - encapsulates this whitespace in a call to the <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/ContentHandler.html#characters(char[],%20int,%20int)">characters</link> + encapsulates this whitespace in a call to the <methodname + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/xml/sax/ContentHandler.html#characters-char:A-int-int-">characters()</methodname> method. In an application this call will typically be ignored. XML document instances in a professional context will typically not contain any newline characters at all. Instead the whole document is represented @@ -551,8 +551,8 @@ Closing Document The second content <code>200W Stereo Amplifier</code> and the third content <code>Earphone</code> both fit in the second buffer. Subsequent content may require further buffer allocations. Such a strategy minimizes - the number of time consuming <code>new </code> <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html">String</link> + the number of time consuming <code>new </code> <classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html">String</classname> <code>(...)</code> constructor calls being necessary for the more convenient API variant <code>characters(String s)</code>.</para> </section> @@ -567,14 +567,14 @@ Closing Document <itemizedlist> <listitem> <para>The error handling is very sparse. It completely relies on - exceptions being thrown by classes like <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/SAXException.html">SAXException</link> + exceptions being thrown by classes like <classname + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/xml/sax/SAXException.html">SAXException</classname> which frequently do not supply meaningful error information.</para> </listitem> <listitem> <para>The application is not aware of namespaces. Thus reading e.g. - <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> document + <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> document instances will not allow to distinguish between elements from different namespaces like HTML.</para> </listitem> @@ -589,11 +589,11 @@ Closing Document xlink:href="http://www.saxproject.org">SAX</acronym> parsing process. <acronym xlink:href="http://www.saxproject.org">SAX</acronym> offers an interface <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/XMLReader.html">XmlReader</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/xml/sax/XMLReader.html">XmlReader</link> to conveniently <emphasis>register</emphasis> event- and error handler instances independently instead of passing both interfaces as a single argument to the <link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/javax/xml/parsers/SAXParser.html#parse(java.lang.String,%20org.xml.sax.helpers.DefaultHandler)">parse</link> + xlink:href="https://docs.oracle.com/javase/8/docs/api/javax/xml/parsers/SAXParser.html#parse-java.io.File-org.xml.sax.helpers.DefaultHandler-">parse()</link> method. We first code an error handler class by implementing the interface <classname>org.xml.sax.ErrorHandler</classname> being part of the <acronym xlink:href="http://www.saxproject.org">SAX</acronym> API:</para> @@ -735,7 +735,7 @@ public class ElementCount { class="starttag">item</tag> element. The parser does not yet show these attribute keys and their corresponding values. Read the documentation for <classname - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/Attributes.html">org.xml.sax.Attributes</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/xml/sax/Attributes.html">org.xml.sax.Attributes</classname> and extend the given code to use it.</para> <para>You should start from the <xref linkend="glo_MIB"/> Maven @@ -1288,7 +1288,7 @@ Document contains 2 inline <img> elements.</programlisting> <variablelist> <varlistentry> <term><link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/SAXNotRecognizedException.html">SAXNotRecognizedException</link></term> + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/xml/sax/SAXNotRecognizedException.html">SAXNotRecognizedException</link></term> <listitem> <para>The feature is not known to the parser.</para> @@ -1297,7 +1297,7 @@ Document contains 2 inline <img> elements.</programlisting> <varlistentry> <term><link - xlink:href="http://java.sun.com/j2se/1.5.0/docs/api/org/xml/sax/SAXNotSupportedException.html">SAXNotSupportedException</link></term> + xlink:href="https://docs.oracle.com/javase/8/docs/api/org/xml/sax/SAXNotSupportedException.html">SAXNotSupportedException</link></term> <listitem> <para>The feature is known to the parser but the parser does not @@ -1308,7 +1308,7 @@ Document contains 2 inline <img> elements.</programlisting> </variablelist> <para>The <productname - xlink:href="http://projects.apache.org/projects/xml_commons_resolver.html">xml-commons + xlink:href="https://projects.apache.org/projects/xml_commons_resolver.html">xml-commons resolver project </productname>offers an implementation being able to process various catalog file formats. Maven based project allow the corresponding library import by adding the following dependency:</para> @@ -1320,7 +1320,7 @@ Document contains 2 inline <img> elements.</programlisting> </dependency></programlisting> <para>We need a properties file <link - xlink:href="http://xerces.apache.org/xml-commons/components/resolver/tips.html">CatalogManager.properties</link> + xlink:href="https://xerces.apache.org/xml-commons/components/resolver/tips.html">CatalogManager.properties</link> defining XML catalogs to be used and additional parameters:</para> <programlisting language="none"># Catalogs are relative to this properties file diff --git a/Doc/Sda1/schema.xml b/Doc/Sda1/schema.xml index c38e7afa4..e7d18682d 100644 --- a/Doc/Sda1/schema.xml +++ b/Doc/Sda1/schema.xml @@ -183,14 +183,14 @@ version="1.0" encoding="UTF-8"?></code></emphasis> mandatory for a file to become a well formed XML document? Find the corresponding passage in the <link - xlink:href="http://www.w3.org/TR/2008/REC-xml-20081126">XML 1.0 + xlink:href="https://www.w3.org/TR/2008/REC-xml-20081126">XML 1.0 standard reference document</link> and explain your answer.</para> </question> <answer> <para>The <link - xlink:href="http://www.w3.org/TR/2008/REC-xml-20081126/#sec-prolog-dtd">Prolog + xlink:href="https://www.w3.org/TR/2008/REC-xml-20081126/#sec-prolog-dtd">Prolog and Document Type Declaration</link> section defines <emphasis role="bold"><code><?xml version="1.0" ... ?></code></emphasis> defines this header as being optional @@ -217,7 +217,7 @@ different XML standard versions.</para> <para>For example XML documents adhering to the (unsuccessful) - <link xlink:href="http://www.w3.org/TR/xml11/#sec-xml11">XML + <link xlink:href="https://www.w3.org/TR/xml11/#sec-xml11">XML 1.1</link> Standard may be analyzed by a parser accordingly by reading the prologue to apply the respective rule set.</para> </answer> @@ -638,7 +638,7 @@ WHERE ID=1</programlisting> Type</emphasis></quote> in <link xlink:href="http://www.w3schools.com/schema/schema_dtypes_date.asp">http://www.w3schools.com/schema/schema_dtypes_date.asp</link> and consider the corresponding reference definition in <link - xlink:href="http://www.w3.org/TR/xmlschema11-2/#duration">http://www.w3.org/TR/xmlschema11-2</link>.</para> + xlink:href="https://www.w3.org/TR/xmlschema11-2/#duration">http://www.w3.org/TR/xmlschema11-2</link>.</para> </question> <answer> @@ -1410,7 +1410,7 @@ WHERE ID=1</programlisting> <glossary> <glossentry xml:id="gloss_API"> - <glossterm><abbrev xlink:href="http://en.wikipedia.org/wiki/Api" + <glossterm><abbrev xlink:href="https://en.wikipedia.org/wiki/Api" xml:id="abbr_api">API</abbrev></glossterm> <glossdef> @@ -1420,7 +1420,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_SqlDdl"> <glossterm><abbrev - xlink:href="http://en.wikipedia.org/wiki/Data_definition_language" + xlink:href="https://en.wikipedia.org/wiki/Data_definition_language" xml:id="abbr_Ddl">DDL</abbrev> <link linkend="gloss_SQL">(SQL)</link></glossterm> @@ -1432,19 +1432,19 @@ WHERE ID=1</programlisting> </glossentry> <glossentry xml:id="gloss_DOM"> - <glossterm><acronym xlink:href="http://www.w3.org/DOM" + <glossterm><acronym xlink:href="https://www.w3.org/DOM" xml:id="abbr_Dom">DOM</acronym></glossterm> <glossdef> <para>The <link linkend="gloss_W3C">W3C</link> <link - xlink:href="http://www.w3.org/DOM">Document Object Model</link> + xlink:href="https://www.w3.org/DOM">Document Object Model</link> standard</para> </glossdef> </glossentry> <glossentry xml:id="gloss_DTD"> <glossterm><abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration" + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration" xml:id="abbr_Dtd">DTD</abbrev></glossterm> <glossdef> @@ -1465,7 +1465,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_ftp"> <glossterm><abbrev - xlink:href="http://en.wikipedia.org/wiki/File_Transfer_Protocol" + xlink:href="https://en.wikipedia.org/wiki/File_Transfer_Protocol" xml:id="abbr_Ftp">ftp</abbrev></glossterm> <glossdef> @@ -1475,7 +1475,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_FO"> <glossterm><abbrev - xlink:href="http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section" + xlink:href="https://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo-section" xml:id="abbr_Fo">FO</abbrev></glossterm> <glossdef> @@ -1485,7 +1485,7 @@ WHERE ID=1</programlisting> </glossentry> <glossentry xml:id="gloss_HDM"> - <glossterm><orgname xlink:href="http://www.hdm-stuttgart.de" + <glossterm><orgname xlink:href="https://www.hdm-stuttgart.de" xml:id="org_Hdm">Hdm</orgname></glossterm> <glossdef> @@ -1495,18 +1495,18 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_Hql"> <glossterm><abbrev - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html" + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html" xml:id="abbr_Hql">HQL</abbrev></glossterm> <glossdef> <para>The <link - xlink:href="http://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html">Hibernate + xlink:href="https://docs.jboss.org/hibernate/orm/3.3/reference/en/html/queryhql.html">Hibernate Query Language</link>.</para> </glossdef> </glossentry> <glossentry xml:id="gloss_http"> - <glossterm><abbrev xlink:href="http://www.w3.org/Protocols" + <glossterm><abbrev xlink:href="https://www.w3.org/Protocols" xml:id="abbr_Http">http</abbrev></glossterm> <glossdef> @@ -1516,7 +1516,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_IDE"> <glossterm><abbrev - xlink:href="http://en.wikipedia.org/wiki/Integrated_development_environment" + xlink:href="https://en.wikipedia.org/wiki/Integrated_development_environment" xml:id="abbr_Ide">IDE</abbrev></glossterm> <glossdef> @@ -1546,7 +1546,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_Javadoc"> <glossterm><trademark - xlink:href="http://docs.oracle.com/javase/1.5.0/docs/guide/javadoc">Javadoc</trademark></glossterm> + xlink:href="https://docs.oracle.com/javase/1.5.0/docs/guide/javadoc">Javadoc</trademark></glossterm> <glossdef> <para>Extracting documentation embedded in <link @@ -1601,13 +1601,13 @@ WHERE ID=1</programlisting> <glossterm><abbrev>MathML</abbrev></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/Math">Mathematical Markup + <para><link xlink:href="https://www.w3.org/Math">Mathematical Markup Language</link></para> </glossdef> </glossentry> <glossentry xml:id="gloss_MIB"> - <glossterm><orgname xlink:href="http://www.mi.hdm-stuttgart.de" + <glossterm><orgname xlink:href="https://www.mi.hdm-stuttgart.de" xml:id="org_Mib">MIB</orgname></glossterm> <glossdef> @@ -1617,7 +1617,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_Mysql"> <glossterm><trademark - xlink:href="http://www.mysql.com/about/legal/trademark.html" + xlink:href="https://www.mysql.com/about/legal/trademark.html" xml:id="tm_Mysql">Mysql</trademark></glossterm> <glossdef> @@ -1643,7 +1643,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_PHP"> <glossterm><abbrev - xlink:href="http://www.php.net">PHP</abbrev></glossterm> + xlink:href="https://secure.php.net">PHP</abbrev></glossterm> <glossdef> <para>Hypertext preprocessor</para> @@ -1674,10 +1674,10 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_SQL"> <glossterm><acronym - xlink:href="http://en.wikipedia.org/wiki/Sql">SQL</acronym></glossterm> + xlink:href="https://en.wikipedia.org/wiki/Sql">SQL</acronym></glossterm> <glossdef> - <para><link xlink:href="http://en.wikipedia.org/wiki/SQL">Structured + <para><link xlink:href="https://en.wikipedia.org/wiki/SQL">Structured query language</link>.</para> </glossdef> </glossentry> @@ -1686,14 +1686,14 @@ WHERE ID=1</programlisting> <glossterm><abbrev>SVG</abbrev></glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/Graphics/SVG">Scalable + <para><link xlink:href="https://www.w3.org/Graphics/SVG">Scalable Vector Graphics</link>.</para> </glossdef> </glossentry> <glossentry xml:id="gloss_TCP"> <glossterm><acronym - xlink:href="http://en.wikipedia.org/wiki/Transmission_Control_Protocol" + xlink:href="https://en.wikipedia.org/wiki/Transmission_Control_Protocol" xml:id="abbr_Tcp">TCP</acronym></glossterm> <glossdef> @@ -1702,7 +1702,7 @@ WHERE ID=1</programlisting> </glossentry> <glossentry xml:id="gloss_URL"> - <glossterm><abbrev xlink:href="http://www.ietf.org/rfc/rfc1738.txt" + <glossterm><abbrev xlink:href="https://www.ietf.org/rfc/rfc1738.txt" xml:id="abbr_Url">URL</abbrev></glossterm> <glossdef> @@ -1724,16 +1724,16 @@ WHERE ID=1</programlisting> <glossdef> <para>Html as <link linkend="gloss_XML">XML</link> <link - xlink:href="http://www.w3.org/TR/xhtml11">standard</link>.</para> + xlink:href="https://www.w3.org/TR/xhtml11">standard</link>.</para> </glossdef> </glossentry> <glossentry xml:id="gloss_XML"> <glossterm><abbrev - xlink:href="http://www.w3.org/XML">Xml</abbrev></glossterm> + xlink:href="https://www.w3.org/XML">Xml</abbrev></glossterm> <glossdef> - <para>The <link xlink:href="http://www.w3.org/XML">Extensible Markup + <para>The <link xlink:href="https://www.w3.org/XML">Extensible Markup Language</link>.</para> </glossdef> </glossentry> @@ -1748,7 +1748,7 @@ WHERE ID=1</programlisting> </glossentry> <glossentry xml:id="gloss_XPath"> - <glossterm><acronym xlink:href="http://www.w3.org/TR/xpath" + <glossterm><acronym xlink:href="https://www.w3.org/TR/xpath" xml:id="abbr_Xpath">XPath</acronym></glossterm> <glossdef> @@ -1758,7 +1758,7 @@ WHERE ID=1</programlisting> <glossentry xml:id="gloss_XSD"> <glossterm><abbrev - xlink:href="http://www.w3.org/Style/XSL">XSD</abbrev></glossterm> + xlink:href="https://www.w3.org/Style/XSL">XSD</abbrev></glossterm> <glossdef> <para>XML Schema description Language</para> @@ -1766,7 +1766,7 @@ WHERE ID=1</programlisting> </glossentry> <glossentry xml:id="gloss_XSL"> - <glossterm><abbrev xlink:href="http://www.w3.org/Style/XSL" + <glossterm><abbrev xlink:href="https://www.w3.org/Style/XSL" xml:id="abbr_Xsl">XSL</abbrev></glossterm> <glossdef> diff --git a/Doc/Sda1/vaadin.xml b/Doc/Sda1/vaadin.xml index 1b5a41a8c..059c74e38 100644 --- a/Doc/Sda1/vaadin.xml +++ b/Doc/Sda1/vaadin.xml @@ -8,10 +8,10 @@ xmlns:html="http://www.w3.org/1999/xhtml" xmlns:db="http://docbook.org/ns/docbook"> <title>Using <productname - xlink:href="http://vaadin.com">Vaadin</productname></title> + xlink:href="https://vaadin.com">Vaadin</productname></title> <para>This chapter presents <productname - xlink:href="http://vaadin.com">Vaadin</productname> framework related + xlink:href="https://vaadin.com">Vaadin</productname> framework related exercises.</para> <section xml:id="sda1SectVaadinMavenConfig"> @@ -36,11 +36,11 @@ <glossdef> <para>The <productname - xlink:href="http://vaadin.com">Vaadin</productname> Maven repository + xlink:href="https://vaadin.com">Vaadin</productname> Maven repository does not allow for tool searching. Thus artifactId and related attributes of required dependencies must be identified in advance. If e.g. <code>maven-cdi</code> is being required <link - xlink:href="http://vaadin.com/nexus/#nexus-search">http://vaadin.com/nexus/#nexus-search</link> + xlink:href="https://vaadin.com/nexus/#nexus-search">http://vaadin.com/nexus/#nexus-search</link> tells us:</para> <programlisting language="xml"><dependency> diff --git a/Doc/Sda1/xmlintro.xml b/Doc/Sda1/xmlintro.xml index e5d8e55ec..0251b3e80 100644 --- a/Doc/Sda1/xmlintro.xml +++ b/Doc/Sda1/xmlintro.xml @@ -25,7 +25,7 @@ referring to the standard itself: The world wide web's <foreignphrase>lingua franca</foreignphrase> HTML has been ported to an XML dialect forming the <link - xlink:href="http://www.w3.org/MarkUp">XHTML</link> Standard. The idea + xlink:href="https://www.w3.org/MarkUp">XHTML</link> Standard. The idea behind this standard is to distinguish between an abstract markup language and rendered results being generated from so called document instances by a browser:</para> @@ -55,11 +55,11 @@ <para>We may extend this example by representing a mathematical formula via a standard called <link - xlink:href="http://www.w3.org/Math">Mathml</link>:</para> + xlink:href="https://www.w3.org/Math">Mathml</link>:</para> <figure xml:id="mathmlExample"> <title>A formula in <link - xlink:href="http://www.w3.org/Math">MathML</link> + xlink:href="https://www.w3.org/Math">MathML</link> representation.</title> <mediaobject> @@ -76,7 +76,7 @@ <itemizedlist> <listitem> - <para>The <link xlink:href="http://www.w3.org/Math">MathML</link> + <para>The <link xlink:href="https://www.w3.org/Math">MathML</link> standard intended to describe mathematical formulas. The standard defines a set of <emphasis>tags</emphasis> like e.g. <tag class="starttag">math:msqrt</tag> with well-defined semantics @@ -109,12 +109,12 @@ <para>In contrast to a RDBMS XML allows data to be organized hierarchically. The <link - xlink:href="http://www.w3.org/Math">MathML</link> representation given in + xlink:href="https://www.w3.org/Math">MathML</link> representation given in <xref linkend="mathmlExample"/> may be graphically visualized:</para> <figure xml:id="mathmltree"> <title>A tree graph representation of the <link - xlink:href="http://www.w3.org/Math">MathML</link> example given + xlink:href="https://www.w3.org/Math">MathML</link> example given before.</title> <mediaobject> @@ -180,7 +180,7 @@ <callout arearefs="first_xml_code_magic"> <para>The very first characters <code><?xml</code> may be regarded as a <link - xlink:href="http://en.wikipedia.org/wiki/Magic_number_(programming)">magic + xlink:href="https://en.wikipedia.org/wiki/Magic_number_(programming)">magic number string</link> being used as a format indicator which allows to distinguish between different file types i.e. GIF, JPEG, HTML and so on.</para> @@ -189,7 +189,7 @@ <callout arearefs="first_xml_code_version"> <para>The <code>version="1.0"</code> attribute tells us that all subsequent lines will conform to the <link - xlink:href="http://www.w3.org/TR/xml">XML</link> standard of version + xlink:href="https://www.w3.org/TR/xml">XML</link> standard of version 1.0. This way a document can express its conformance to the version 1.0 standard even if in the future this standard evolves to a higher version e.g. <code>version="2.1"</code>.</para> @@ -244,7 +244,7 @@ Parsing was successful</errortext></programlisting> <para>Various XML related plugins are supplied for the <productname - xlink:href="http://eclipse.org">eclipse platform</productname> like the + xlink:href="https://eclipse.org">eclipse platform</productname> like the <productname xlink:href="http://oxygenxml.com">Oxygen software</productname> supplying <quote>life</quote> conformance checking while editing XML documents. Now we test our assumptions by violating some @@ -430,19 +430,19 @@ terminated by the matching end-tag "</to>". parsing error</computeroutput> quotes like <code><date day="monday'></code>. How does the parser react? Find the corresponding syntax definition of legal attribute values in the <link - xlink:href="http://www.w3.org/TR/xml">XML standard W3C + xlink:href="https://www.w3.org/TR/xml">XML standard W3C Recommendation</link>.</para> </question> <answer> <para>The parser flags a mixture of single and double quotes for a given attribute as an error. The XML standard <link - xlink:href="http://www.w3.org/TR/xml#NT-AttValue">defines</link> + xlink:href="https://www.w3.org/TR/xml#NT-AttValue">defines</link> the syntax of attribute values: An attribute value has to be enclosed <emphasis>either</emphasis> in two single <emphasis>or</emphasis> in two double quotes as being defined in <uri - xlink:href="http://www.w3.org/TR/xml/#NT-AttValue">http://www.w3.org/TR/xml/#NT-AttValue</uri>.</para> + xlink:href="https://www.w3.org/TR/xml/#NT-AttValue">http://www.w3.org/TR/xml/#NT-AttValue</uri>.</para> </answer> </qandaentry> @@ -513,7 +513,7 @@ terminated by the matching end-tag "</to>". parsing error</computeroutput> Standard.</para> <para>These constraints are part of the definition of a <link - xlink:href="http://www.w3.org/TR/xml#sec-well-formed">well formed + xlink:href="https://www.w3.org/TR/xml#sec-well-formed">well formed document</link>. The specification imposes additional constraints for a document to be well-formed.</para> </section> diff --git a/Doc/Sda1/xmlschema.xml b/Doc/Sda1/xmlschema.xml index b28e89346..58757d42e 100644 --- a/Doc/Sda1/xmlschema.xml +++ b/Doc/Sda1/xmlschema.xml @@ -85,7 +85,7 @@ </listitem> <listitem> - <para><link xlink:href="http://www.w3.org/XML/Schema">XML + <para><link xlink:href="https://www.w3.org/XML/Schema">XML Schema</link></para> </listitem> @@ -148,7 +148,7 @@ <para>All these fields contain ordinary text to be filled in by a user and shall appear exactly in the defined order. For simplicity we do not care about email address syntax rules being described in <link - xlink:href="http://www.w3.org/Protocols/rfc822">RFC based address + xlink:href="https://www.w3.org/Protocols/rfc822">RFC based address schemes</link>. We will see how the <emphasis>constraints</emphasis> mentioned above can be modelled in XML by an extension to the concept of well formed documents.</para> @@ -247,14 +247,14 @@ <para>From the viewpoint of software modeling an XML Schema instance is a <emphasis>schema</emphasis> describing the syntax of a class of XML document instances adhering to it. In the context of XML technologies - <link xlink:href="http://www.w3.org/XML/Schema">XML Schema</link> is one + <link xlink:href="https://www.w3.org/XML/Schema">XML Schema</link> is one of several language alternatives which allow for XML document structure descriptions.</para> <para>Readers being familiar with <abbrev - xlink:href="http://en.wikipedia.org/wiki/Backus-Naur_form">BNF</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Backus-Naur_form">BNF</abbrev> or <abbrev - xlink:href="http://en.wikipedia.org/wiki/Extended_Backus_Naur_form">EBNF</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Extended_Backus_Naur_form">EBNF</abbrev> will be able to understand the grammatical rules being expressed here.</para> @@ -369,10 +369,10 @@ <callout arearefs="memo_external_dtd_url"> <para>The address of the schema's rule set. In the given example it is just a filename but it may as well be an <link - xlink:href="http://www.w3.org/Addressing">URL</link> of type + xlink:href="https://www.w3.org/Addressing">URL</link> of type <abbrev - xlink:href="http://en.wikipedia.org/wiki/File_Transfer_Protocol">ftp</abbrev>, - <abbrev xlink:href="http://www.w3.org/Protocols">http</abbrev> and + xlink:href="https://en.wikipedia.org/wiki/File_Transfer_Protocol">ftp</abbrev>, + <abbrev xlink:href="https://www.w3.org/Protocols">http</abbrev> and so on, see <xref linkend="memoDtdOnFtp"/>.</para> </callout> </calloutlist> @@ -391,11 +391,11 @@ <emphasis>U</emphasis><foreignphrase>niform</foreignphrase> <emphasis>R</emphasis><foreignphrase>esource</foreignphrase> <emphasis>L</emphasis><foreignphrase>ocator</foreignphrase> <link - xlink:href="http://www.w3.org/Addressing">(URL)</link>. Thus our + xlink:href="https://www.w3.org/Addressing">(URL)</link>. Thus our <filename>memo.xsd</filename> may also be supplied as a <abbrev - xlink:href="http://www.w3.org/Protocols">http</abbrev> or <abbrev - xlink:href="http://en.wikipedia.org/wiki/File_Transfer_Protocol">ftp</abbrev> - <link xlink:href="http://www.w3.org/Addressing">URL</link>:</para> + xlink:href="https://www.w3.org/Protocols">http</abbrev> or <abbrev + xlink:href="https://en.wikipedia.org/wiki/File_Transfer_Protocol">ftp</abbrev> + <link xlink:href="https://www.w3.org/Addressing">URL</link>:</para> <figure xml:id="memoDtdOnFtp"> <title>A schema reference to a FTP server.</title> @@ -471,7 +471,7 @@ <filename>memo.xsd</filename>.</para> <para>An element type being defined in a <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev> may have document instances as realizations. For example the document instance shown in <xref linkend="memo_external_dtd"/> has two <emphasis>nodes</emphasis> of element type <tag @@ -483,12 +483,12 @@ about two <tag class="starttag">from</tag> elements. But the careful reader should always distinguish between a single type <code>foo</code> being defined in a <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev> and the possibly empty set of <tag class="starttag">foo</tag> nodes appearing in valid document instances.</para> <para><abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">Schema</abbrev>'s + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">Schema</abbrev>'s appear on top of well-formed XML documents:</para> <figure xml:id="wellformedandvalid"> @@ -556,7 +556,7 @@ <para>The aim of this exercise is to clarify the (abstract) relation between XML <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s and sets of <xref linkend="glo_Java"/> classes rather then building a running application. We want to model the <link xlink:href="Sda1/Ref/src/Memo.1/memo.xsd">memo schema</link> as @@ -594,7 +594,7 @@ public class Memo { our schema: A Memo document instance <emphasis>may</emphasis> have duplicate content in <tag class="starttag">to</tag> nodes. This is a weakness of <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>s: + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>s: We are unable to impose uniqueness constraints on the content of partial sets of document nodes.</para> @@ -627,7 +627,7 @@ public class Memo { <para>In the following chapters we will extend the memo document schema to demonstrate various concepts of <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s and other XML related standards. In parallel a series of exercises deals with building a schema usable to edit books. This schema gets extended as our knowledge about XML advances. We start with an initial @@ -731,16 +731,16 @@ public class Memo { <section xml:id="dtdVsSqlDdl"> <title>Relating <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s - and <acronym xlink:href="http://en.wikipedia.org/wiki/Sql">SQL</acronym> + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s + and <acronym xlink:href="https://en.wikipedia.org/wiki/Sql">SQL</acronym> - <abbrev - xlink:href="http://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev></title> + xlink:href="https://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev></title> <para>XML <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s - and <acronym xlink:href="http://en.wikipedia.org/wiki/Sql">SQL</acronym> + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s + and <acronym xlink:href="https://en.wikipedia.org/wiki/Sql">SQL</acronym> - <abbrev - xlink:href="http://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev> are related: They both describe data models and thus integrity constraints. We consider a simple invoice example:</para> @@ -983,13 +983,13 @@ public class Memo { <itemizedlist> <listitem> <para><link - xlink:href="http://en.wikipedia.org/wiki/List_of_airline_codes">ICAO + xlink:href="https://en.wikipedia.org/wiki/List_of_airline_codes">ICAO airline designator</link></para> </listitem> <listitem> <para><link - xlink:href="http://en.wikipedia.org/wiki/International_Civil_Aviation_Organization_airport_code">ICAO + xlink:href="https://en.wikipedia.org/wiki/International_Civil_Aviation_Organization_airport_code">ICAO airport code</link></para> </listitem> </itemizedlist> @@ -1008,7 +1008,7 @@ public class Memo { class="starttag">xs:assert test="..." </tag> and thus XML schema version 1.1. You may want to read about co-occurrence constraints as being described in <link - xlink:href="http://www.ibm.com/developerworks/library/x-xml11pt2">Listing + xlink:href="https://www.ibm.com/developerworks/library/x-xml11pt2">Listing 6. Assertion on complex type - @height < @width</link>.</para> </listitem> @@ -1213,7 +1213,7 @@ public class Memo { <section xml:id="xmlAndJava"> <title>Relating <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s and <xref linkend="glo_Java"/> class descriptions.</title> <para>We may also compare XML data constraints to <xref @@ -1225,7 +1225,7 @@ public class Memo { <figure xml:id="fig_XmlAndJava"> <title>XML <abbrev - xlink:href="http://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s + xlink:href="https://en.wikipedia.org/wiki/Document_Type_Declaration">schema</abbrev>'s and <xref linkend="glo_Java"/> class declarations.</title> <mediaobject> @@ -1650,7 +1650,7 @@ public class Memo { <productionset> <title><link - xlink:href="http://www.w3.org/TR/2008/REC-xml-20081126/#d0e888">Literals</link></title> + xlink:href="https://www.w3.org/TR/2008/REC-xml-20081126/#d0e888">Literals</link></title> <production xml:id="w3RecXml_NT-EntityValue"> <lhs>EntityValue</lhs> @@ -1806,7 +1806,7 @@ public class Memo { element <tag class="starttag">link</tag> with target referencing attribute <tag class="starttag">link linkend="..."</tag> of type <code - xlink:href="http://www.w3.org/TR/xmlschema11-2/#IDREF">xs:IDREF</code>.</para> + xlink:href="https://www.w3.org/TR/xmlschema11-2/#IDREF">xs:IDREF</code>.</para> </listitem> </itemizedlist> </question> diff --git a/Doc/Sda1/xslt.xml b/Doc/Sda1/xslt.xml index 2543d6187..dbbfcf17a 100644 --- a/Doc/Sda1/xslt.xml +++ b/Doc/Sda1/xslt.xml @@ -8,7 +8,7 @@ xmlns:db="http://docbook.org/ns/docbook"> <title>The Extensible stylesheet Language XSL</title> - <para>XSL is a <link xlink:href="http://www.w3.org/Style/XSL">W3C + <para>XSL is a <link xlink:href="https://www.w3.org/Style/XSL">W3C standard</link> which defines a language to transform XML documents into the following output formats:</para> @@ -65,7 +65,7 @@ <section xml:id="xsl_helloworld"> <title>A <quote>Hello, world</quote> <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> example</title> + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> example</title> <para>We start from an extended version of our <filename>memo.xsd</filename>:</para> @@ -156,7 +156,7 @@ <para>We want to extract the sender's name from an arbitrary <tag class="element">memo</tag> document instance. Using <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> this task can be + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> this task can be accomplished by a script <filename>memo2sender.xsl</filename>:</para> <programlisting language="xml"><?xml version="1.0" encoding="UTF-8"?> @@ -173,7 +173,7 @@ <para>Before closer examining this code we first show its effect. We need a piece of software called a <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> processor. It reads + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> processor. It reads both a <tag>memo</tag> document instance and a style sheet and produces the following output:</para> @@ -184,7 +184,7 @@ Martin Goik</computeroutput></programlisting> Goik</computeroutput>. We may sketch the transformation principle:</para> <figure xml:id="figure_xsl_principle"> - <title>An <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <title>An <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> processor transforming a XML document into a result using a stylesheet</title> @@ -200,9 +200,9 @@ Martin Goik</computeroutput></programlisting> xlink:href="http://saxon.sourceforge.net">Saxon XSLT processor</productname>. We may also use the Eclipse/Oxygen plugin replacing the shell command by a GUI <link - xlink:href="http://www.oxygenxml.com/doc/ug-editorEclipse/#topics/defining-new-transformation-scenario.html">as + xlink:href="https://www.oxygenxml.com/doc/ug-editorEclipse/#topics/defining-new-transformation-scenario.html">as being described in the corresponding documentation</link>. Next we closer - examine the <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + examine the <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> example code:</para> <programlisting language="xml"><xsl:stylesheet <co @@ -235,7 +235,7 @@ Martin Goik</computeroutput></programlisting> <callout arearefs="programlisting_helloxsl_namespace_abbv"> <para>The keyword <code>xmlns</code> is reserved by the <link - xlink:href="http://www.w3.org/TR/REC-xml-names/">Namespaces in + xlink:href="https://www.w3.org/TR/REC-xml-names/">Namespaces in XML</link> specification. In <quote>pure</quote> XML the whole term <code>xmlns:xsl</code> would simply define an attribute. In presence of a namespace aware XML parser however the literal @@ -250,14 +250,14 @@ Martin Goik</computeroutput></programlisting> </callout> <callout arearefs="programlisting_helloxsl_xsl_version"> - <para>The <link xlink:href="http://www.w3.org/TR/xslt20">XSL + <para>The <link xlink:href="https://www.w3.org/TR/xslt20">XSL standard</link> is still evolving. The version number identifies the conformance level for the subsequent code.</para> </callout> <callout arearefs="programlisting_helloxsl_method_text"> <para>The <tag class="attribute">method</tag> attribute in the <link - xlink:href="http://www.w3.org/TR/xslt20/#element-output"><xsl:output></link> + xlink:href="https://www.w3.org/TR/xslt20/#element-output"><xsl:output></link> element specifies the type of output to be generated. Depending on this type we may also define indentation depths and/or encoding. Allowed <tag class="attvalue">method</tag> values are:</para> @@ -275,7 +275,7 @@ Martin Goik</computeroutput></programlisting> <glossterm>html</glossterm> <glossdef> - <para><link xlink:href="http://www.w3.org/TR/html4">HTML</link> + <para><link xlink:href="https://www.w3.org/TR/html4">HTML</link> markup.</para> </glossdef> </glossentry> @@ -285,7 +285,7 @@ Martin Goik</computeroutput></programlisting> <glossdef> <para><link - xlink:href="http://www.w3.org/TR/xhtml1">Xhtml</link> markup + xlink:href="https://www.w3.org/TR/xhtml1">Xhtml</link> markup differing from the former by e.g. the closing <quote>/></quote> in <tag><img src="..."/></tag>.</para> @@ -322,7 +322,7 @@ Martin Goik</computeroutput></programlisting> <callout arch="" arearefs="programlisting_helloxsl_value-of programlisting_helloxsl_valueof_select_att"> <para>A <tag class="element">value-of</tag> element writes content to - the <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + the <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> process' output. In this example the <code>#PCDATA</code> content from the element <tag class="element">from</tag> will be written to the output.</para> @@ -331,19 +331,19 @@ Martin Goik</computeroutput></programlisting> </section> <section xml:id="xpath"> - <title><link xlink:href="http://www.w3.org/TR/xpath">XPath</link> and node + <title><link xlink:href="https://www.w3.org/TR/xpath">XPath</link> and node sets</title> - <para>The <acronym xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> + <para>The <acronym xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> standard allows us to retrieve node sets from XML documents by predicate based queries. Thus its role may be compared to <acronym - xlink:href="http://en.wikipedia.org/wiki/Sql">SQL</acronym> + xlink:href="https://en.wikipedia.org/wiki/Sql">SQL</acronym> <code>SELECT</code> ... <code>FROM</code> ...<code>WHERE</code> queries. Some simple examples:</para> <figure xml:id="fig_Xpath"> <title>Simple <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> queries</title> + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> queries</title> <mediaobject> <imageobject> @@ -387,7 +387,7 @@ Martin Goik</computeroutput></programlisting> </callout> <callout arearefs="programlisting_tolist_xpath_memo_to"> - <para>The <link xlink:href="http://www.w3.org/TR/xpath">XPath</link> + <para>The <link xlink:href="https://www.w3.org/TR/xpath">XPath</link> expression <tag class="attvalue">memo/to</tag> gets evaluated starting from the invisible top level document node being the context node. For the given document instance this will define a result set containing @@ -409,7 +409,7 @@ Martin Goik</computeroutput></programlisting> <figure xml:id="figure_recipientlist_trailing_comma"> <title>A list of recipients.</title> - <para>The <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <para>The <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> presented before yields:</para> <programlisting language="none"><computeroutput>Adam Hacker,Eve Intruder</computeroutput><emphasis @@ -426,14 +426,14 @@ Martin Goik</computeroutput></programlisting> each recipient. We now discuss the role of the two attributes <tag class="attribute">match="/"</tag> and <tag class="attribute">select=memo/to</tag>. Both are examples of so called - <link xlink:href="http://www.w3.org/TR/xpath">XPath</link> expressions. + <link xlink:href="https://www.w3.org/TR/xpath">XPath</link> expressions. They allow to define <emphasis>node sets</emphasis> being subsets from the set of all nodes from a given document instance.</para> <para>Conceptually <link - xlink:href="http://www.w3.org/TR/xpath">XPath</link> expressions may be + xlink:href="https://www.w3.org/TR/xpath">XPath</link> expressions may be compared to the <acronym - xlink:href="http://en.wikipedia.org/wiki/Sql">SQL</acronym> language the + xlink:href="https://en.wikipedia.org/wiki/Sql">SQL</acronym> language the latter allowing the retrieval of data<emphasis>sets</emphasis> from a relational database. We illustrate the current example by a figure:</para> @@ -453,7 +453,7 @@ Martin Goik</computeroutput></programlisting> <quote>filled</quote>. This node represents the document instance as a whole and has got <tag>memo</tag> as its only child. We will rediscover this additional root node when we discuss the <abbrev - xlink:href="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">DOM</abbrev> + xlink:href="https://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407">DOM</abbrev> application programming interface.</para> <para>As already mentioned the expression <code>memo/to</code> evaluates @@ -461,7 +461,7 @@ Martin Goik</computeroutput></programlisting> of two nodes of type <tag class="starttag">to</tag> each of them representing a recipient of the memo. We observe a subtle difference between the two <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expressions:</para> + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expressions:</para> <glosslist> <glossentry> @@ -471,19 +471,19 @@ Martin Goik</computeroutput></programlisting> <para>The expression starts and actually consists of the string <quote>/</quote>. Thus it can be called an <emphasis>absolute</emphasis> <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expression. + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expression. Like a file specification <filename>C:\dos\myprog.exe</filename> it starts on top level and needs no further context information to get evaluated.</para> <para>A <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> style sheet + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> style sheet <emphasis>must</emphasis> have an <link - xlink:href="http://www.w3.org/TR/xslt20/#initiating">initial context + xlink:href="https://www.w3.org/TR/xslt20/#initiating">initial context node</link> to start the transformation. This is achieved by providing exactly one <tag class="starttag">xsl:template</tag> with an absolute <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> value for its + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> value for its <tag class="attribute">match</tag> attribute like <tag class="attvalue">/memo</tag>.<emphasis/></para> </glossdef> @@ -504,17 +504,17 @@ Martin Goik</computeroutput></programlisting> <para>Likewise we have to define a <emphasis>context</emphasis> node if we want to evaluate a relative <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expression. + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expression. In our example this is the root node. The XSL specification introduces the term <link - xlink:href="http://www.w3.org/TR/xslt20/#context">evaluation + xlink:href="https://www.w3.org/TR/xslt20/#context">evaluation context</link> for this purpose.</para> </glossdef> </glossentry> </glosslist> <para>In order to explain relative <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expressions we + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expressions we consider <code>content/para</code> starting from the (unique!) <tag class="element">memo</tag> node:</para> @@ -529,7 +529,7 @@ Martin Goik</computeroutput></programlisting> <caption> <para>The dashed lines represent the relative <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expressions + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expressions starting from the context node to each of the nodes in the result set.</para> </caption> @@ -539,7 +539,7 @@ Martin Goik</computeroutput></programlisting> <section xml:id="xsl_important_elements"> <title>Some important <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> elements</title> + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> elements</title> <section xml:id="xsl_if"> <title><tag class="starttag">xsl:if</tag></title> @@ -606,7 +606,7 @@ Martin Goik</computeroutput></programlisting> <callout arearefs="programlisting_xsl_if_test"> <para>The attribute value of <tag class="attribute">test</tag> will be <link - xlink:href="http://www.w3.org/TR/xslt20/#xsl-if">evaluated</link> as + xlink:href="https://www.w3.org/TR/xslt20/#xsl-if">evaluated</link> as a boolean. In this example it evaluates to <code>true</code> iff the attribute <tag class="attribute">id</tag> is defined for the context node. Since we are inside the <tag @@ -620,7 +620,7 @@ Martin Goik</computeroutput></programlisting> <para>The <tag class="attribute">id</tag> attributes value is copied to the output. The <quote>@</quote> character in <code>select="@id"</code> tells the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> processor to + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> processor to read the value of an <emphasis>attribute</emphasis> with name <tag class="attribute">id</tag> rather then the content of a nested sub<emphasis>element</emphasis> like in <code><to @@ -637,7 +637,7 @@ Martin Goik</computeroutput></programlisting> <callout arearefs="programlisting_xsl_if_usevar"> <para>The <quote>$</quote> sign in front of <code>newline</code> tells the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> processor to + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> processor to access the variable <varname>newline</varname> previously defined in <coref linkend="programlisting_xsl_if_definevar"/> rather then interpreting it as the name of a sub element or an attribute.</para> @@ -668,13 +668,13 @@ INSERT INTO Customer (id, name) VALUES ('eve', 'Eve intruder')</computeroutput>< <para>We may use a <tag class="element">xsl:if</tag> to insert a comma for all but the very last recipient node. This can be achieved by using the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> functions + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> functions <link - xlink:href="http://www.w3.org/TR/xpath#function-position">position()</link> + xlink:href="https://www.w3.org/TR/xpath#function-position">position()</link> and <link - xlink:href="http://www.w3.org/TR/xpath#function-last">last()</link>. + xlink:href="https://www.w3.org/TR/xpath#function-last">last()</link>. Hint: The arithmetic operator <quote><</quote> may be used in - <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> to + <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> to compare two integer numbers. However it must be escaped as <code>&lt;</code> in order to be XML compatible.</para> </question> @@ -702,20 +702,20 @@ INSERT INTO Customer (id, name) VALUES ('eve', 'Eve intruder')</computeroutput>< <para>In <xref linkend="programlisting_memo_export_sql"/> we used the <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> value + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> value <quote>from|to</quote> to select the desired sender and recipient nodes. Inside the <tag class="element">xsl:for-each</tag> block we permitted only those nodes which have an <tag class="attribute">id</tag> attribute. These two steps may be combined into a single <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expression obsoleting the <tag class="element">xsl:if</tag>.</para> </question> <answer> <para>We simply need a modified <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> in the + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> in the <tag class="element">for-each</tag>:</para> <programlisting language="xml"><xsl:for-each select="<emphasis @@ -738,7 +738,7 @@ INSERT INTO Customer (id, name) VALUES ('eve', 'Eve intruder')</computeroutput>< <para>We already used <tag class="element">xsl:for-each</tag> to iterate over a list of element nodes. <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> offers a different + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> offers a different possibility for this purpose. The idea is to define the formatting rules at a centralized location. So the solution to <xref linkend="example_position_last"/> in an equivalent way:</para> @@ -829,7 +829,7 @@ for (int i = 0; i < 10; i++){ <para>So far calling a static method in <xref linkend="glo_Java"/> may be compared to a <tag class="starttag">xsl:apply-templates</tag>. There is however one big difference. In <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> the + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> the <quote>method</quote> being called may not exist at all. A <tag class="starttag">xsl:apply-templates</tag> instructs a processor to format a set of nodes. It does not contain information about any rules @@ -848,7 +848,7 @@ for (int i = 0; i < 10; i++){ <para>Since no suitable template supplying rules for <tag class="starttag">content</tag> nodes exists a <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> processor uses a + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> processor uses a default formatting rule instead:</para> <programlisting language="none"><computeroutput>Thanks for your excellent work.Our firewall is definitely @@ -874,12 +874,12 @@ broken! This bug has been reported by the sender.</computeroutput></programlisti </xsl:template></programlisting> <para>The <quote>*</quote> matches any element if there is no <link - xlink:href="http://www.w3.org/TR/xslt20/#conflict">better + xlink:href="https://www.w3.org/TR/xslt20/#conflict">better matching</link> rule defined. Since we did not supply any template for <tag class="starttag">content</tag> nodes at all this default template will match nodes of type <tag class="starttag">content</tag>. The function <code>name()</code> is predefined in <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> and returns the + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> and returns the element type name of a node. During the formatting process we will now see the following warning message:</para> @@ -889,7 +889,7 @@ broken! This bug has been reported by the sender.</computeroutput></programlisti class="starttag">xyz</tag><code>foo</code><tag class="endtag">xyz</tag> containing only <code>#PCDATA</code> a simple <tag class="emptytag">xsl:apply-templates select="xyz"</tag> is sufficient: A - <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> processor + <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> processor uses its default rule and copies the node's content <code>foo</code> to its output.</para> @@ -918,7 +918,7 @@ broken! This bug has been reported by the sender.</computeroutput></programlisti <answer> <para>We define two templates differing only in the static string value for a person's type. The relevant <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> portion + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> portion reads:<programlisting language="xml"><xsl:template match="/memo"> <xsl:apply-templates select="from|to"/> </xsl:template> @@ -1015,8 +1015,8 @@ IV: ... ...</computeroutput></programlisting> <para>Though <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> offers <link - xlink:href="http://www.w3.org/TR/xslt20/#convert">a better way</link> we + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> offers <link + xlink:href="https://www.w3.org/TR/xslt20/#convert">a better way</link> we may generate these number literals by:</para> <programlisting language="xml"><xsl:template match="/memo"> @@ -1064,11 +1064,11 @@ IV: ... <title>Listing the recipients of a memo</title> <para>In order to generate a XHTML <link - xlink:href="http://www.w3.org/TR/html401/struct/lists.html#h-10.2">list</link> + xlink:href="https://www.w3.org/TR/html401/struct/lists.html#h-10.2">list</link> of all <tag class="starttag">memo</tag> recipients of a memo we have to use <tag class="starttag">xsl:output method="xhtml"</tag> and embed the required HTML tags in our <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> style + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> style sheet:</para> <programlisting language="xml"><xsl:output method="xhtml" indent="yes"/> @@ -1126,7 +1126,7 @@ IV: ... <para>This may be improved further by instructing the XSL formatter to use <uri - xlink:href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</uri> + xlink:href="https://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</uri> as default namespace:</para> <programlisting language="xml"><?xml version="1.0" encoding="UTF-8"?> @@ -1166,18 +1166,18 @@ IV: ... <qandaentry> <question> <para>Create a <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> style + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> style sheet to transform instances of the first version of <link endterm="example_bookDtd" linkend="example_bookDtd">book.xsd</link> (<xref linkend="example_bookDtd"/>) into <uri - xlink:href="http://www.w3.org/TR/xhtml1/#a_dtd_XHTML-1.0-Strict">Xhtml + xlink:href="https://www.w3.org/TR/xhtml1/#a_dtd_XHTML-1.0-Strict">Xhtml 1.0 strict</uri>.</para> <para>You should first construct a Xhtml document <emphasis>manually</emphasis> before coding the XSL. After you have a <quote>working</quote> Xhtml example document create a - <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> style sheet which transforms arbitrary <filename>book.xsd</filename> document instances into a corresponding Xhtml file.</para> @@ -1261,9 +1261,9 @@ IV: ... <para>The color variable is used to compose the attribute <tag class="attribute">style</tag>'s value. The curly <code>{...}</code> braces are part of the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> standard's + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> standard's syntax. They are required here to instruct the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> processor to + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> processor to substitute the local variable <code>messageColor</code>'s value instead of simply copying the literal string <quote><code>$messageColor</code></quote> itself to the output @@ -1273,7 +1273,7 @@ IV: ... </calloutlist> <para>Instead of constructing an extra variable <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> offers a slightly + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> offers a slightly more compact way for the same purpose. The <tag class="starttag">xsl:attribute</tag> element allows us to define the name of an attribute to be added together with an attribute value @@ -1316,7 +1316,7 @@ IV: ... <para>XSL offers a standard function for this purpose namely <link - xlink:href="http://www.w3.org/TR/xslt20/#generate-id">generate-id(...)</link>. + xlink:href="https://www.w3.org/TR/xslt20/#generate-id">generate-id(...)</link>. In a nutshell this function takes a XML node as an argument (or being called without arguments it uses the context node) and creates a string value being unique with respect to @@ -1428,7 +1428,7 @@ IV: ... need some <emphasis role="bold"><em>time</em></emphasis>.</p></programlisting> <para>We start with a first version of an <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> template:</para> + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> template:</para> <programlisting language="xml"> <xsl:template match="content"> <p> @@ -1473,9 +1473,9 @@ need some <emphasis role="bold"><em>time</em></emphasis>.</p>< <para>To correct this transformation script we have to tell the formatting processor to include bare text nodes into the output. The - <abbrev xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> standard + <abbrev xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> standard defines a function <link - xlink:href="http://www.w3.org/TR/xpath#path-abbrev">text()</link> for + xlink:href="https://www.w3.org/TR/xpath#path-abbrev">text()</link> for this purpose. It returns the boolean value <code>true</code> for an argument node of type text:</para> @@ -1500,7 +1500,7 @@ you need some </emphasis><em>time</em><emphasis role="bold">.</empha <orderedlist> <listitem> <para>The <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expression + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expression <code>select="text()|emphasis|url"</code> corresponds nicely to the schema's content model definition:</para> @@ -1521,7 +1521,7 @@ you need some </emphasis><em>time</em><emphasis role="bold">.</empha be formatted. During development some of the elements defined in a schema are likely to be omitted by accidence. For this reason the <quote>typical</quote> <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expression + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expression acting on mixed content models is defined to match <emphasis>any</emphasis> sub element nodes:</para> @@ -1560,7 +1560,7 @@ you need some </emphasis><em>time</em><emphasis role="bold">.</empha format text nodes being <emphasis>immediate</emphasis> children of <tag class="starttag">content</tag>. This may be achieved by restricting the <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> expression to + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> expression to <tag class="starttag">xsl:template match="content/text()"</tag>.</para> </listitem> @@ -1570,11 +1570,11 @@ you need some </emphasis><em>time</em><emphasis role="bold">.</empha <section xml:id="section_xsl_functionid"> <title>The function <code>id()</code></title> - <para>In <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <para>In <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> we sometimes want to lookup nodes by an attribute value of type <link xlink:href="???">ID</link>. We consider our product catalog from <xref linkend="sectSchemaProductCatalog"/>. The following <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> may be used to + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> may be used to create <acronym>XHtml</acronym>l documents from <tag class="starttag">catalog</tag> instances:</para> @@ -1654,10 +1654,10 @@ you need some </emphasis><em>time</em><emphasis role="bold">.</empha </mediaobject> </figure> - <para>In <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + <para>In <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> we may follow <code>ID</code> reference by means of the built in function <link - xlink:href="http://www.w3.org/TR/xpath#function-id">id(...)</link>:</para> + xlink:href="https://www.w3.org/TR/xpath#function-id">id(...)</link>:</para> <programlisting language="xml"><xsl:template match="link"> <a href="#{@ref}"><xsl:value-of select="."/></a> @@ -1701,16 +1701,16 @@ you need some </emphasis><em>time</em><emphasis role="bold">.</empha <para>The table model is a simplified version of the <xref linkend="glo_XHTML"/> table model. Read the <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> documentation of the element <tag class="emptytag" - xlink:href="http://www.w3.org/TR/xslt20/#element-copy-of">xsl:copy-of</tag> + xlink:href="https://www.w3.org/TR/xslt20/#element-copy-of">xsl:copy-of</tag> for processing tables.</para> <tip> <para>The Oxygen plugin's default configuration does not validate <xref linkend="glo_XML"/> input documents. Using the <link - xlink:href="http://www.w3.org/TR/xpath#function-id">id(...)</link> + xlink:href="https://www.w3.org/TR/xpath#function-id">id(...)</link> function requires two IDE configuration steps:</para> <glosslist> @@ -1921,7 +1921,7 @@ you need some </emphasis><em>time</em><emphasis role="bold">.</empha target's identity string is generated via <code>generate-id()</code>. But we may follow the reference via the <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> <link + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> <link linkend="section_xsl_functionid">id()</link> function and then use the target's identity value:</para> @@ -1993,7 +1993,7 @@ Jack Eve Jude <----Tolstoi----> <co </calloutlist> <para>XSL supports this type of transformation by supplying <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> axis + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> axis definitions. We consider a memo document with 9 <tag class="starttag">to</tag> nodes:</para> @@ -2060,16 +2060,16 @@ Jack Eve Jude <----Tolstoi----> <co set of all nodes having the same parent as the context node and appearing <quote>before</quote> the context node. The notion <quote>before</quote> is meant in the sense of a <link - xlink:href="http://en.wikipedia.org/wiki/Depth-first_search">depth-first</link> + xlink:href="https://en.wikipedia.org/wiki/Depth-first_search">depth-first</link> traversal of the document tree. <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> provides + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> provides different axis definitions, see <uri - xlink:href="http://www.w3.org/TR/xpath#axes">http://www.w3.org/TR/xpath#axes</uri> + xlink:href="https://www.w3.org/TR/xpath#axes">https://www.w3.org/TR/xpath#axes</uri> for details. We provide an illustration here:</para> <figure xml:id="disjointAxeSets"> <title>Disjoint <acronym - xlink:href="http://www.w3.org/TR/xpath">XPath</acronym> axis + xlink:href="https://www.w3.org/TR/xpath">XPath</acronym> axis definitions.</title> <mediaobject> @@ -2110,9 +2110,9 @@ Jack Eve Jude <----Tolstoi----> <co <para>We consider a memo document instance. We want to generate one text file for each memo recipient containing just the recipient's name using - the <abbrev xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> + the <abbrev xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> element <link - xlink:href="http://www.w3.org/TR/xslt20/#element-result-document"><xsl:result-document></link>:</para> + xlink:href="https://www.w3.org/TR/xslt20/#element-result-document"><xsl:result-document></link>:</para> <programlisting language="xml"><xsl:template match="/memo"> <xsl:apply-templates select="to"/> @@ -2134,7 +2134,7 @@ Jack Eve Jude <----Tolstoi----> <co <calloutlist> <callout arearefs="programlisting_xsl_result_document_main"> <para>The output from all generating <abbrev - xlink:href="http://www.w3.org/Style/XSL">XSL</abbrev> directives + xlink:href="https://www.w3.org/Style/XSL">XSL</abbrev> directives will be redirected from standard output to another output channel.</para> </callout> @@ -2149,7 +2149,7 @@ Jack Eve Jude <----Tolstoi----> <co <para>The <code>method</code> attribute possibly overrides a value being given in the <tag class="starttag">xsl:output</tag> element. We may also redefine <link - xlink:href="http://www.w3.org/TR/xslt20/#element-result-document">other + xlink:href="https://www.w3.org/TR/xslt20/#element-result-document">other attributes</link> from <tag class="starttag">xsl:output</tag> like <code>doctype-{public.system}</code> and the generated file's <code>encoding</code>.</para> @@ -2182,7 +2182,7 @@ Jack Eve Jude <----Tolstoi----> <co class="starttag">para</tag>. You need to identify the <tag class="starttag">chapter</tag> node embedding this para. This may be done by using a suitable <abbrev - xlink:href="http://www.w3.org/TR/xpath">XPath</abbrev> axis + xlink:href="https://www.w3.org/TR/xpath">XPath</abbrev> axis direction.</para> </question> diff --git a/Doc/Sda2/jpa.xml b/Doc/Sda2/jpa.xml index 51d6f8b10..aa2e5311d 100644 --- a/Doc/Sda2/jpa.xml +++ b/Doc/Sda2/jpa.xml @@ -49,7 +49,7 @@ <para>The following section requires the eclipse Maven plugin to be installed. This may be accomplished by installing the <productname - xlink:href="http://www.jboss.org/tools">Jboss Tools</productname> via + xlink:href="https://www.jboss.org/tools">Jboss Tools</productname> via <guimenu>Help</guimenu> <guisubmenu>Eclipse Marketplace</guisubmenu> which will install Maven as a dependency.</para> @@ -236,7 +236,7 @@ </informalfigure> <para>Notice the location of the <productname - xlink:href="http://www.mysql.com">Mysql</productname> jar below the + xlink:href="https://www.mysql.com">Mysql</productname> jar below the <filename>.m2</filename> Maven folder in the user's home directory. If we share our project this location will change to e.g. <filename>c:\users\foo\.m2\...</filename> due to different system @@ -339,10 +339,10 @@ </figure> <para>This file may be edited with a simple text editor. The Eclipse - <productname xlink:href="http://www.jboss.org/tools">Jboss + <productname xlink:href="https://www.jboss.org/tools">Jboss Tools</productname> Eclipse plugin provides a configuration editor simplifying this task. They may be installed on top of Eclipse <link - xlink:href="http://www.jboss.org/tools/download">in several ways</link>. + xlink:href="https://www.jboss.org/tools/download">in several ways</link>. The following video shows some of its features.</para> <mediaobject> @@ -399,7 +399,7 @@ <para>The following class <classname>hibintro.v1.model.User</classname> will be used as a starting example to be mapped to a database. Notice the <classname>javax.persistence.Entity</classname> <link - xlink:href="http://docs.oracle.com/javase/tutorial/java/javaOO/annotations.html">annotation</link> + xlink:href="https://docs.oracle.com/javase/tutorial/java/javaOO/annotations.html">annotation</link> <coref linkend="entityAnnotation"/>:</para> <figure xml:id="mappingUserInstances"> @@ -762,7 +762,7 @@ <figure xml:id="retrieveAllUserByHql"> <title>Retrieving <classname>hibintro.v1.model.User</classname> instances by <abbrev - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev>.</title> + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev>.</title> <programlisting language="none">package hibintro.v1.run; ... @@ -844,7 +844,7 @@ </qandaset> <para>The careful reader may already expect <abbrev - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev> + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev> to offer additional features namely predicate based queries. Following <classname>hibintro.v1.run.SelectUser</classname> we may restrict our result set by an <xref linkend="glo_SQL"/> style <code>WHERE</code> @@ -867,9 +867,9 @@ <title>Criteria based queries</title> <para>Selecting Objects by <abbrev - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev>c + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev>c queries technically means parsing <abbrev - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev> + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev> and transforming it into some sort of abstract syntax tree. We may instead create corresponding structures by using <trademark>Hibernate</trademark>'s criteria API:</para> @@ -905,7 +905,7 @@ }</programlisting> <para>Hibernates produces the following <abbrev - xlink:href="http://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev> statements containing an attribute <code>selected</code> <coref linkend="attributeSelected"/>:</para> @@ -1111,13 +1111,13 @@ <code>nullable=false</code> is not needed.</para> <para>This is in accordance with <abbrev - xlink:href="http://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev>: + xlink:href="https://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev>: Attributes composing a primary key must not allow <code>NULL</code> values but attributes only appearing in UNIQUE declarations may become <code>NULL</code>.</para> <para>The <abbrev - xlink:href="http://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev> + xlink:href="https://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev> reads:</para> <programlisting language="none">CREATE TABLE User ( @@ -1164,7 +1164,7 @@ <para>In addition each project receives a unique integer id value as well. This is in accordance with the <quote>best practice</quote> rule of defining a <link - xlink:href="http://en.wikipedia.org/wiki/Surrogate_key">surrogate + xlink:href="https://en.wikipedia.org/wiki/Surrogate_key">surrogate key</link> <coref linkend="projectPrimaryKeyDefinition"/> to be used as (primary) object identifier. This immutable key will then become the target in foreign key definitions:</para> @@ -1387,7 +1387,7 @@ <para>Sometimes we are interested in changing <xref linkend="glo_JPA"/>'s default type mapping strategy. For example <trademark - xlink:href="http://www.mysql.com/about/legal/trademark.html">Mysql</trademark> + xlink:href="https://www.mysql.com/about/legal/trademark.html">Mysql</trademark> versions prior to 5.0 lack an appropriate type representing boolean values. It was therefore quite common mapping boolean properties to <code>CHAR(1)</code> with possible values being <code>'Y'</code> and @@ -1438,7 +1438,7 @@ <para>Readers being interested in more sophisticated strategies like mapping user defined data types to database types are advised to read the <link - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch05.html#mapping-types">manual + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch05.html#mapping-types">manual section on Hibernate types</link>.</para> </section> @@ -1575,7 +1575,7 @@ <listitem> <para>Use the <xref linkend="glo_JAXB"/> schema compiler <command - xlink:href="http://docs.oracle.com/javase/8/docs/technotes/tools/unix/xjc.html"><xref + xlink:href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/xjc.html"><xref linkend="glo_xjc"/></command> accordingly to create domain classes corresponding to <tag class="starttag">catalog</tag> and <tag @@ -1584,9 +1584,9 @@ <listitem> <para>Create a <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/javax/xml/bind/JAXBContext.html">JAXBContext</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/javax/xml/bind/JAXBContext.html">JAXBContext</classname> and an <classname - xlink:href="http://docs.oracle.com/javase/8/docs/api/javax/xml/bind/Unmarshaller.html">Unmarshaller</classname> + xlink:href="https://docs.oracle.com/javase/8/docs/api/javax/xml/bind/Unmarshaller.html">Unmarshaller</classname> instance to parse valid <tag class="starttag">catalog</tag> instances accordingly.</para> @@ -1595,7 +1595,7 @@ <listitem> <para>Supply <xref linkend="glo_JPA"/> annotations to the <command - xlink:href="http://docs.oracle.com/javase/8/docs/technotes/tools/unix/xjc.html"><xref + xlink:href="https://docs.oracle.com/javase/8/docs/technotes/tools/unix/xjc.html"><xref linkend="glo_xjc"/></command> generated <classname>de.hdm_stuttgart.mi.sda2.jpa.cd.domain.Catalog</classname> class.</para> @@ -1603,10 +1603,10 @@ </itemizedlist> <para>Hint: The Maven archetype <link - xlink:href="http://maven-repository.com/artifact/com.github.lalyos/standalone-jpa-eclipselink-archetype">standalone-jpa-eclipselink-archetype</link> + xlink:href="https://maven-repository.com/artifact/com.github.lalyos/standalone-jpa-eclipselink-archetype">standalone-jpa-eclipselink-archetype</link> may help getting started with <xref linkend="glo_JPA"/> configuration issues. You may want to add <link - xlink:href="http://repo1.maven.org/maven2/archetype-catalog.xml">http://repo1.maven.org/maven2/archetype-catalog.xml</link> + xlink:href="https://repo1.maven.org/maven2/archetype-catalog.xml">http://repo1.maven.org/maven2/archetype-catalog.xml</link> to your list of archetype repositories.</para> </question> @@ -1637,7 +1637,7 @@ <para>Mapping inheritance hierarchies to relational databases means bridging the gap between object <link - xlink:href="http://en.wikipedia.org/wiki/Object-relational_impedance_mismatch">oriented + xlink:href="https://en.wikipedia.org/wiki/Object-relational_impedance_mismatch">oriented and relational models</link>. We start with a slightly modified example from <xref linkend="bib_Bauer05"/>:</para> @@ -1691,7 +1691,7 @@ </figure> <para>The relation may be created by the following <abbrev - xlink:href="http://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev>:</para> + xlink:href="https://en.wikipedia.org/wiki/Data_definition_language">DDL</abbrev>:</para> <figure xml:id="fig_TablePerClassHierarchyMapping"> <title>Mapping the inheritance hierarchy.</title> @@ -1867,7 +1867,7 @@ <para>As in <xref linkend="retrieveAllUserByHql"/> objects being stored by <xref linkend="insertCreditBank"/> may be queried using <abbrev - xlink:href="http://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev>.</para> + xlink:href="https://docs.jboss.org/hibernate/orm/4.1/manual/en-US/html/ch16.html">HQL</abbrev>.</para> <informaltable border="1"> <colgroup width="6%"/> diff --git a/Doc/Sda2/ldap.xml b/Doc/Sda2/ldap.xml index f1e524a29..869a3dae8 100644 --- a/Doc/Sda2/ldap.xml +++ b/Doc/Sda2/ldap.xml @@ -78,7 +78,7 @@ <step> <para>In the <quote>Connections</quote> window right click <quote>New Connection ...</quote> like in <uri - xlink:href="http://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_create_connection.html">http://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_create_connection.html</uri>.</para> + xlink:href="https://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_create_connection.html">http://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_create_connection.html</uri>.</para> </step> <step> @@ -103,7 +103,7 @@ <para>Add two departments <code>billing</code> and <code>research</code>. Then supply corresponding user entries to both departments by using the <link - xlink:href="http://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_browse.html">LDAP + xlink:href="https://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_browse.html">LDAP browser view</link>. (As being mentioned previously hardcore hackers take <link xlink:href="http://tldp.org/HOWTO/LDAP-HOWTO/utilities.html">this @@ -325,9 +325,9 @@ <para>Hint: <xref linkend="glo_Soft_ApacheDirectoryStudio"/> allows both for <link - xlink:href="http://directory.apache.org/studio/users-guide/ldap_browser/tools_filter_editor_dialog.html">filtering</link> + xlink:href="https://directory.apache.org/studio/users-guide/ldap_browser/tools_filter_editor_dialog.html">filtering</link> and <link - xlink:href="http://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_search.html">searching</link> + xlink:href="https://directory.apache.org/studio/users-guide/ldap_browser/gettingstarted_search.html">searching</link> providing nifty features like attribute name completion and syntax highlighting. For regular searches you may define:</para> @@ -586,7 +586,7 @@ <listitem> <para>Transfer RDBMS data to your local <xref linkend="glo_LDAP"/> server using <link - xlink:href="http://docs.oracle.com/javase/jndi/tutorial/ldap/misc/url.html">JNDI</link>.</para> + xlink:href="https://docs.oracle.com/javase/jndi/tutorial/ldap/misc/url.html">JNDI</link>.</para> </listitem> </orderedlist> </question> @@ -618,22 +618,22 @@ <itemizedlist> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_READ_UNCOMMITTED">TRANSACTION_READ_UNCOMMITTED</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_READ_UNCOMMITTED">TRANSACTION_READ_UNCOMMITTED</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_READ_COMMITTED">TRANSACTION_READ_COMMITTED</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_READ_COMMITTED">TRANSACTION_READ_COMMITTED</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_REPEATABLE_READ">TRANSACTION_READ_REPEATABLE_READ</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_REPEATABLE_READ">TRANSACTION_READ_REPEATABLE_READ</link></para> </listitem> <listitem> <para><link - xlink:href="http://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_SERIALIZABLE">TRANSACTION_READ_SERIALIZABLE</link></para> + xlink:href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html#TRANSACTION_SERIALIZABLE">TRANSACTION_READ_SERIALIZABLE</link></para> </listitem> </itemizedlist> </listitem> @@ -646,7 +646,7 @@ <listitem> <para><link - xlink:href="http://technet.microsoft.com/en-us/library/ms378149(v=sql.110).aspx">Understanding + xlink:href="https://technet.microsoft.com/en-us/library/ms378149(v=sql.110).aspx">Understanding Isolation Levels (Microsoft)</link></para> </listitem> </itemizedlist> diff --git a/Doc/Sdi/apache.xml b/Doc/Sdi/apache.xml index bfd35e791..6a9238c95 100644 --- a/Doc/Sdi/apache.xml +++ b/Doc/Sdi/apache.xml @@ -16,7 +16,7 @@ <itemizedlist> <listitem> - <para><link xlink:href="http://httpd.apache.org/docs/2.4">Apache HTTP + <para><link xlink:href="https://httpd.apache.org/docs/2.4">Apache HTTP Server Version 2.4 Documentation</link></para> </listitem> </itemizedlist> @@ -143,7 +143,7 @@ <itemizedlist> <listitem> - <para><link xlink:href="http://httpd.apache.org/docs/2.4/ssl">Apache + <para><link xlink:href="https://httpd.apache.org/docs/2.4/ssl">Apache SSL/TLS Encryption</link></para> </listitem> @@ -187,7 +187,7 @@ <listitem> <para>Configure <code>Require valid-user</code> in your apache configuration as being shown in <quote - xlink:href="http://httpd.apache.org/docs/current/howto/auth.html#multprovider">Using + xlink:href="https://httpd.apache.org/docs/current/howto/auth.html#multprovider">Using multiple providers</quote> (but using just <xref linkend="glo_LDAP"/> authentication rather than enabling <quote>file</quote> as well).</para> @@ -216,7 +216,7 @@ <listitem> <para>Install <link - xlink:href="http://sourceforge.net/projects/phpmyadmin">PhpMyadmin</link> + xlink:href="https://sourceforge.net/projects/phpmyadmin">PhpMyadmin</link> (using the package manager) to administer your <xref linkend="glo_Soft_Mysql"/> server.</para> </listitem> @@ -329,7 +329,7 @@ java -Xmx512M -Dadvanced.syncDefault=true \ <tip> <para>This requires <link - xlink:href="http://askubuntu.com/questions/58179/install-mod-proxy-to-get-proxypass-to-work#answer-58185">enabling</link> + xlink:href="https://askubuntu.com/questions/58179/install-mod-proxy-to-get-proxypass-to-work#answer-58185">enabling</link> the Apache <xref linkend="glo_HTTP"/> proxy module.</para> </tip> </listitem> diff --git a/Doc/Sdi/ldap.xml b/Doc/Sdi/ldap.xml index 2a51ab771..ca048b820 100644 --- a/Doc/Sdi/ldap.xml +++ b/Doc/Sdi/ldap.xml @@ -28,7 +28,7 @@ Ldapmodify erlaubt icht-objectclass konforme Daten</programlisting> <listitem> <para><uri - xlink:href="http://www.novell.com/coolsolutions/feature/15359.html">An + xlink:href="https://www.novell.com/coolsolutions/feature/15359.html">An Introduction to LDAP: Part 1</uri></para> </listitem> @@ -184,7 +184,7 @@ Ldapmodify erlaubt icht-objectclass konforme Daten</programlisting> <title>Browse an existing <xref linkend="glo_LDAP"/> Server</title> <para>Before setting up we take a tour on <productname - xlink:href="http://directory.apache.org/studio">Apache Directory + xlink:href="https://directory.apache.org/studio">Apache Directory Studio</productname>:</para> <itemizedlist> @@ -288,7 +288,7 @@ aptitude install slapd</programlisting> linkend="sdiLdapBetrayerComTree"/>.</para> <para>For your convenience we have installed the <productname - xlink:href="http://directory.apache.org/studio">Apache Directory + xlink:href="https://directory.apache.org/studio">Apache Directory Studio</productname> Eclipse plugin which allows for convenient editing of <xref linkend="glo_LDAP"/> trees.</para> @@ -387,7 +387,7 @@ aptitude install slapd</programlisting> </tip> <para>When you are finished an <productname - xlink:href="http://directory.apache.org/studio">Apache Directory + xlink:href="https://directory.apache.org/studio">Apache Directory Studio</productname> export dump might look like:</para> <programlisting language="ldif">dn: dc=betrayer,dc=com @@ -446,14 +446,14 @@ userPassword:: e3NtZDV9YVhKL2JlVkF2TDRENk9pMFRLcDhjM3ovYTZQZzBXeHA=</programlist <title>Testing a bind operation as non - <code>admin</code> user</title> <para>Use <productname - xlink:href="http://directory.apache.org/studio">Apache Directory + xlink:href="https://directory.apache.org/studio">Apache Directory Studio</productname> to supply a <property>userPassword</property> to e.g. <code>uid=beam,ou=devel,ou=software,ou=departments,dc=betrayer;dc=com</code> (still binding as <code>cn=admin,dc=betrayer,dc=com</code>).</para> <para>Then configure a second <productname - xlink:href="http://directory.apache.org/studio">Apache Directory + xlink:href="https://directory.apache.org/studio">Apache Directory Studio</productname> profile binding as <code>uid=beam,ou=devel,ou=software,ou=departments,dc=betrayer,dc=com</code>.</para> @@ -526,7 +526,7 @@ olcRootPW: {SSHA}7M0gUyHOH7cfK1z9amqgK0uQcn84AuYw</emphasis> configuration access to <code>localhost</code>.</para> <para>External access e.g. by <productname - xlink:href="http://directory.apache.org/studio">Apache Directory + xlink:href="https://directory.apache.org/studio">Apache Directory Studio</productname> requires adding this credential attribute. This first-time (bootstrapping) configuration must be done locally by means of an <xref linkend="glo_LDIF"/> file using a different user's hash @@ -589,7 +589,7 @@ modifying entry "olcDatabase={0}config,cn=config"</programlisting> in <code>cn=config</code> appropriately.</para> <para>Consider <link - xlink:href="http://serverfault.com/questions/324608/how-do-i-get-openldap-on-centos-6-to-write-anything-to-its-log-files#answer-499902">using + xlink:href="https://serverfault.com/questions/324608/how-do-i-get-openldap-on-centos-6-to-write-anything-to-its-log-files#answer-499902">using olcLogFile</link>. Caveat: You <xref linkend="glo_LDAP"/> server daemon does runs from a non - root <property>uid</property>. Thus you have to assure sufficient writing permissions.</para> diff --git a/Doc/Sdi/unixIntro.xml b/Doc/Sdi/unixIntro.xml index 2950d027e..4e7ccafb9 100644 --- a/Doc/Sdi/unixIntro.xml +++ b/Doc/Sdi/unixIntro.xml @@ -32,7 +32,7 @@ <para><link xlink:href="http://docstore.mik.ua/orelly/networking_2ndEd/ssh">The definitive guide</link>, also available at <link - xlink:href="http://proquest.safaribooksonline.com/book/networking/ssh/0596000111">SafariOnline</link></para> + xlink:href="https://proquest.safaribooksonline.com/book/networking/ssh/0596000111">SafariOnline</link></para> <itemizedlist> <listitem> -- GitLab